0

我在 Windows 8 机器上安装了 vs 2010 和 2012 Ultimate,它曾经是 Win 7 机器,但已升级。当我尝试在 2010 年或 2012 年制作任何 asp.net mvc 4 应用程序时,我得到

Could not load type 'System.Web.Http.RouteParameter' from assembly 'System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.

当尝试加载应用程序并向家庭控制器上的索引发出请求时。

引用的 System.Web.Http dll 是:

C:\src\web\MvcApplication6\packages\Microsoft.AspNet.WebApi.Core.4.0.20710.0\lib\net40\System.Web.Http.dll

所以它来自 mvc nuget 包。这里到底发生了什么:(

4

1 回答 1

2

您 - 很可能 - 有 MVC4 的冲突版本。

我最好的猜测是,您仍然有尚未卸载的 MVC4 beta 或 MVC4 RC - 在这些版本中,Web API 程序集是 GAC 版的。

卸载旧版本的 MVC4 并重新安装 MVC4。另外,检查 System.Web.Http.dll 是否设置为复制本地 true。

于 2013-01-13T19:47:37.160 回答