我以前遇到过这个问题,但我需要做的就是清理和重建项目。现在这似乎不再起作用了。当我启动Asp.Net MVC3项目调试器时,该站点在我的浏览器中打开。我没有得到浏览器中显示的第一个页面,而是得到了这个错误:
Parser Error Message: Could not load file or assembly 'System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
Source Error:
Line 31: <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
Line 32: <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
Line 33: <add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
Line 34: </assemblies>
Line 35: </compilation>
我似乎想不出怎么解决这个问题。有什么想法吗?
发布于 2012-09-28 09:20:17
我遇到了这个问题。可能是当我在MVC v4之上安装MVC MVC v3时发生的,我不确定。
无论如何,我从我的项目中删除了System.Web.WebPages
引用。然后,在Add Reference对话框的.NET选项卡中列出了两个System.Web.WebPages引用,一个是版本1.0.0.0,另一个是2.0.0.0。我确保添加了版本1.0.0.0,因为这是缺少的版本。
发布于 2015-01-06 02:57:22
对我来说,解决方案是去我的服务器,在服务器上安装Web Pages版本2。
转到http://www.microsoft.com/en-us/download/details.aspx?id=34600
然后下载包并运行它。
事情就是这么简单。
发布于 2013-01-10 18:58:37
当我有这个问题的时候,我为这个问题挠头了一段时间。最后,我注意到在我的web.config的“运行时”部分中有以下部分。
<runtime>
. . .
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
</dependentAssembly>
. . .
</runtime>
正如您所看到的,这指的是程序集的版本2,它与您在web.config的system.web/编译/程序集部分中也有的以下代码不匹配。
<add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
项目参考中引用的实际程序集确实是v1.0.0.0,因此我将上面的第一段代码更改为以下代码,从而立即修复了问题。我不确定这个错误最初是怎么发生的。
<runtime>
. . .
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="1.0.0.0" />
</dependentAssembly>
. . .
</runtime>
https://stackoverflow.com/questions/11246861
复制相似问题