将ASP.NET MVC 3项目升级到ASP.NET MVC 4

Oma*_*OUG 5 asp.net asp.net-mvc-3 asp.net-mvc-4

我有一个asp.net MVC3项目我按照本教程升级到asp.net mvc4:http: //www.asp.net/whitepapers/mvc4-release-notes#_Toc303253806

执行项目时出现以下错误

[A] System.Web.WebPages.Razor.Configuration.HostSection无法强制转换为[B] System.Web.WebPages.Razor.Configuration.HostSection.类型A源自'System.Web.WebPages.Razor,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35',位于'默认'位置'C:\ Windows\Microsoft.Net\assembly\GAC_MSIL\System .Web.WebPages.Razor\v4.0_1.0.0.0__31bf3856ad364e35\System.Web.WebPages.Razor.dll".\的Windows\Microsoft.Net \组件\ GAC_MSIL \系统:B型从 'System.Web.WebPages.Razor,版本= 2.0.0.0,文化=中性公钥= 31bf3856ad364e35' 在位置上下文 '默认'"C起源.Web.WebPages.Razor\v4.0_2.0.0.0__31bf3856ad364e35\System.Web.WebPages.Razor.dll".

Dav*_*gan 3

可以在此处找到分步说明: http://www.asp.net/whitepapers/mvc4-release-notes#_Toc303253806

具体来说,您对在 web.config 中绑定重定向感兴趣。

  <dependentAssembly>
    <assemblyIdentity name="System.Web.WebPages" 
         publicKeyToken="31bf3856ad364e35" />
    <bindingRedirect oldVersion="1.0.0.0" newVersion="2.0.0.0"/>
  </dependentAssembly>
Run Code Online (Sandbox Code Playgroud)

并且不要忘记将以下内容添加到您的<appSettings>

  <add key="webpages:Version" value="2.0.0.0" />
Run Code Online (Sandbox Code Playgroud)