如何获得'System.Web.Http,Version = 5.2.3.0?

我刚刚创build了一个MVC5项目,并从nuget添加了几个包,但是当我编译项目时,我得到了这个错误。 看来其中一个包真的取决于system.web.http版本5.2.3.0,我找不到任何地方。 我只是想知道如何获得最新版本的system.web.http?

错误2程序集“System.Web.Http.WebHost,版本= 5.2.3.0,文化=中性,PublicKeyToken = 31bf3856ad364e35”使用“System.Web.Http,版本= 5.2.3.0,文化=中立,PublicKeyToken = 31bf3856ad364e35”比引用程序集“System.Web.Http,Version = 5.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35”更高版本 
d:\ Backup 2014-12-25 \ Website-Projects \ www.ptsol.com.au \ packages \ Microsoft.AspNet.WebApi.WebHost.5.2.3 \ lib \ net45 \ System.Web.Http.WebHost.dll

在包pipe理器控制台中

Install-Package Microsoft.AspNet.WebApi.Core -version 5.2.3

解决这个问题的一种方法是通过修改web.config文件中的程序集redirect。

修改以下内容:

 <dependentAssembly> <assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" /> </dependentAssembly> 

 <dependentAssembly> <assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="4.0.0.0" /> </dependentAssembly> 

因此,oldVersion属性应该从“…- 4.0.0.0”更改为“…- 5.2.3.0”。

我没有安装包Microsoft.AspNet.WebApi.Core – 版本5.2.3,但它仍然没有工作。 然后看看我的项目bin文件夹,看到它仍然有旧的System.Web.Mvc文件。 所以不得不手动将新的文件从软件包复制到bin文件夹。 然后我又起身跑了。

安装程序包Microsoft.AspNet.WebApi.Core – 版本5.2.3

然后在项目添加引用 – >浏览。 按浏览button并转到C:\ Users \ UserName \ Documents \ Visual Studio 2015 \ Projects \ ProjectName \ packages \ Microsoft.AspNet.Mvc.5.2.3 \ lib \ net45并添加所需的.dll文件

你安装的软件包引入了依赖到版本5.2.3.0 dll的用户Bracher在上面显示。 Microsoft.AspNet.WebApi.Cors是一个示例包。 我所采取的path是更新MVC项目proir到任何包安装:

 Install-Package Microsoft.AspNet.Mvc -Version 5.2.3 

https://www.nuget.org/packages/microsoft.aspnet.mvc

卸载并重新安装nuget包为我工作。

  1. 从项目中删除任何旧的参考。

在包pipe理器控制台中执行此操作:

  1. UnInstall-Package Microsoft.AspNet.WebApi.Core -version 5.2.3
  2. 安装程序包Microsoft.AspNet.WebApi.Core – 版本5.2.3