Web Api:找不到System.Net.Http版本2.0.0.0

时间:2012-08-13 20:04:07

标签: asp.net-web-api .net-assembly nuget-package system.net system.net.httpwebrequest

当我为WebApi安装NuGet包时,它为我提供了System.Net.Http的1.0.0.0版本,但它引用了版本2.

我似乎无法找到我的生命版本2。当我下载.net 4.5时,我得到System.Net.Http版本4.0.315.x,但我无法使用它,因为Web Api程序集引用版本2.0.0.0。

任何人都知道我在哪里可以找到这个版本2.0.0.0?我已经尝试过NuGet包管理器,mvc4,.net 4.5,没有什么能给我第2版。

提前致谢。

1 个答案:

答案 0 :(得分:12)

<system.web>节点下的Web.config文件中添加以下配置(假设您的应用程序在.NET 4.5上运行,targetFramework属性设置为4.5):

<compilation targetFramework="4.5">
  <assemblies>
    <add assembly="System.Net.Http, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
  </assemblies>
</compilation>

还在<configuration>节点下的根级别添加以下内容:

<runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <dependentAssembly>
      <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" />
      <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
    </dependentAssembly>
  </assemblyBinding>
</runtime>

这可以解决您的问题。