当我尝试运行我接管的项目时出现此错误。
我假设我的web.config有问题,但我不知道要查找什么。
“System.Web.Mvc.MvcWebRazorHostFactory”类型的表达式不能用于返回类型“System.Web.WebPages.Razor.WebRazorHostFactory”
对此的任何建议都将受到高度赞赏。
当我尝试运行我接管的项目时出现此错误。
我假设我的web.config有问题,但我不知道要查找什么。
“System.Web.Mvc.MvcWebRazorHostFactory”类型的表达式不能用于返回类型“System.Web.WebPages.Razor.WebRazorHostFactory”
对此的任何建议都将受到高度赞赏。
尝试替换 Web.Config 中的行
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
至
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
(将 MvcWebRazorHostFactory 设置为版本 4.0.0.0)
在 ALL Views/web.config 下将 MvcWebRazorHostFactory 设置为版本5 .0.0.0
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
对于其他仍在受苦的人,我的解决方案与上面的解决方案一样,但需要进行一些调整- 我需要在项目引用中将工厂类型版本与 System.Web.Mvc dll 的版本相匹配。要找出您拥有的版本:
所以在我的情况下,如下所示:
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
我得到了同样的错误。什么对我有用:右键单击您的项目并选择管理 NuGet 包。安装 Microsoft ASP.NET Razor。重建项目。