MVC を現在の .Net WebForms サイトに統合しています。セットアップ中は、これらのリンクをガイダンスとして使用しました。Hanselman - MVCとblog.falafelの統合。
サイトは機能し、.aspx ページとコントローラー/アクションに問題なく移動できます。しかし、@model をカミソリ ページに追加しようとすると、@model が登録されていないように見え、Visual Studio は HTML5 アイテムとして認識します。
例外:
{"c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\a3be471e\a209a63\App_Web_index.cshtml.a8d08dba.d7uqhlro.0.cs(30): エラー CS1514: {予期される" } System.Exception {System.Web.HttpCompileException}
適切な参照をすべて追加し、両方のサイトを何度も調べました。
私が追加した参照のリスト -
Microsoft.Csharp
System.ComponentModel.Data
System.Web.Mvc
System.Web.Razor
System.Web.WebPages
System.Net.Http
System.Web.Optimization
System.Web.Http
System.Web.Http.WebHost
Newtonsoft.Json
Web.config の追加
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</assemblies>
</compilation>
<system.web>
<pages>
<namespaces>
<add namespace="System.Web.Helpers" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="System.Web.WebPages"/>
</namespaces>
</pages>
</system.web>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>