could not load file or assembly "System.Web.Mvc...

1.一般出现这个错误是因为Web.Config里面的版本号跟project用到的dll版本对应不上
更改webconfig
<add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
或者直接把对应版本dll copy到web application folder 下面的bin

PublicKeyToken可以使用sn -T命令得知

使用vs的Tools Command Prompt命令行工具,输入SN -T "path",就会显示这个dll 的PublicKeyToken。

比如:C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC>SN -T "D:\documents\visual studio 2012\Projects\VirtualLabMVC\VirtualLabMVC\bin\DotNetOpenAuth.AspNet.dll"。

2.那如果发现Web.Config里面根本没有assembly的声明,只是引用了命名空间
<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.Optimization" />
       <add namespace="System.Web.Routing" />
       <add namespace="System.Web.WebPages" />
     </namespaces>
   </pages>
查找下该server有没有装MVC4
C:\Windows\Microsoft.NET\assembly\GAC_MSIL\System.Web.Mvc
如果没有,则安装



3.上面的都可以了,发现还不行,可能是另一個原因,將Specific Version改為false


  

posted on 2014-07-31 19:03  白马酒凉  阅读(259)  评论(0)    收藏  举报

导航