繁体   English   中英

无法加载文件或程序集'System.Net.Http,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'

[英]Could not load file or assembly 'System.Net.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'

我正在使用WEB API 2制作Web应用程序。以前,我的项目运行良好,没有任何错误。 只有在我将nuget软件包更新到最新版本之后,才会出现错误。

当前,当我启动Web应用程序时,它引发了一个错误:

在此处输入图片说明

这是引发异常的命令(在Startup.cs中)

GlobalConfiguration.Configure(ApiRouteConfig.Register);

我试过一次又一次地重新安装WEB API 5.2.3,但是没有运气。 该错误不断发生。

这是我的packages.config

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="Autofac" version="4.4.0" targetFramework="net461" />
  <package id="Autofac.Mvc5" version="4.0.1" targetFramework="net461" />
  <package id="Autofac.SignalR2" version="4.0.0" targetFramework="net46" />
  <package id="Autofac.WebApi2" version="4.0.1" targetFramework="net461" />
  <package id="EntityFramework" version="6.1.3" targetFramework="net46" />
  <package id="JWT" version="1.3.4" targetFramework="net461" />
  <package id="log4net" version="2.0.8" targetFramework="net461" />
  <package id="Microsoft.AspNet.Cors" version="5.2.3" targetFramework="net46" />
  <package id="Microsoft.AspNet.Mvc" version="5.2.3" targetFramework="net46" />
  <package id="Microsoft.AspNet.Razor" version="3.2.3" targetFramework="net46" />
  <package id="Microsoft.AspNet.SignalR.Core" version="2.2.1" targetFramework="net46" />
  <package id="Microsoft.AspNet.SignalR.SystemWeb" version="2.2.1" targetFramework="net46" />
  <package id="Microsoft.AspNet.WebApi" version="5.2.3" targetFramework="net461" />
  <package id="Microsoft.AspNet.WebApi.Client" version="5.2.3" targetFramework="net461" />
  <package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net461" />
  <package id="Microsoft.AspNet.WebApi.Cors" version="5.2.3" targetFramework="net46" />
  <package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net461" />
  <package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net46" />
  <package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.3" targetFramework="net461" />
  <package id="Microsoft.IdentityModel.Logging" version="1.1.3" targetFramework="net461" />
  <package id="Microsoft.IdentityModel.Tokens" version="5.1.3" targetFramework="net461" />
  <package id="Microsoft.Net.Compilers" version="2.0.1" targetFramework="net461" developmentDependency="true" />
  <package id="Microsoft.Owin" version="3.0.1" targetFramework="net46" />
  <package id="Microsoft.Owin.Cors" version="3.0.1" targetFramework="net46" />
  <package id="Microsoft.Owin.Host.SystemWeb" version="3.0.1" targetFramework="net46" />
  <package id="Microsoft.Owin.Security" version="3.0.1" targetFramework="net46" />
  <package id="Microsoft.Owin.Security.Jwt" version="3.0.1" targetFramework="net461" />
  <package id="Microsoft.Owin.Security.OAuth" version="3.0.1" targetFramework="net461" />
  <package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net46" />
  <package id="Modernizr" version="2.8.3" targetFramework="net46" />
  <package id="Newtonsoft.Json" version="10.0.2" targetFramework="net461" />
  <package id="Nustache" version="1.16.0.4" targetFramework="net461" />
  <package id="Owin" version="1.0" targetFramework="net46" />
  <package id="ToolKit-DataAnnotations" version="1.0.4" targetFramework="net461" />
</packages>

我在互联网上搜索了许多解决方案,但对我却没有用。 我不知道我的项目正在发生什么。 它花了我一天的时间。

我的开发环境:

  • Visual Studio 2015社区更新3
  • 网络框架4.6.1

有人可以帮我吗?

谢谢。

发生这种情况是因为某些程序集在升级它时仍引用System.Net.Http版本4.0.0.0,而版本4.0.0.0不再存在。

您可以尝试的事情:

在您的项目文件夹中搜索System.Net.Http.dll 它通常在packages Right click on dll > Properties > Goto Details tab > Find Product Version在此处Right click on dll > Properties > Goto Details tab > Find Product Version

打开App.config,添加以下代码。 assemblyBinding应位于configuration > runtime 用在上一步中找到的版本替换current_version

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

这将在runtime将对版本4.0.0.0任何调用重定向到current_version dll。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Azure应用服务 - 无法加载文件或程序集&#39;System.Net.Http,Version = 4.2.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a&#39; 无法加载文件或程序集&#39;System.Threading.Tasks,Version = 1.5.11.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a&#39; 错误<add assembly=“System.Data.SqlClient, Version=10.50.1600, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”/> 无法加载文件或程序集&#39;System.Net.Http,Version = 4.0.0.0&#39; Asp.Net托管问题:无法加载文件或程序集&#39;System.Web.Http,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35&#39; 无法加载文件或程序集'Oracle.DataAccessVersion = 9.2.0.700,Culture = neutral,PublicKeyToken = 89b483f429c47342' 无法加载文件或程序集&#39;Oracle.DataAccess,Version = 2.112.2.0,Culture = neutral,PublicKeyToken = 89b483f429c47342&#39;或其依赖项之一 无法加载文件或程序集&#39;Microsoft.Web.Iis.Rewrite.Providers,Version = 7.1.761.0,Culture = neutral,PublicKeyToken = 0545b0627da60a5f&#39; 无法在ABCPdf.net中获取错误:无法加载“ ABCpdf,版本= 10.1.2.5,文化=中性,PublicKeyToken = a7a0b3f5184f2169” 无法加载文件或程序集“log4net,版本=1.2.10.0,文化=中性,PublicKeyToken=1b44e1d426115821”
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM