Microsoft WebAPI 要求 System.Net.Http,版本=4.0.0.0
Posted
技术标签:
【中文标题】Microsoft WebAPI 要求 System.Net.Http,版本=4.0.0.0【英文标题】:Microsoft WebAPI asks for System.Net.Http, Version=4.0.0.0 【发布时间】:2019-08-27 09:52:44 【问题描述】:自从我将项目更新到 .net 4.8 后,我经常遇到运行时错误 (FileNotFoundException):
Die Datei oder Assembly "System.Net.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" oder eine Abhängigkeit davon wurde nicht gefunden。系统看死 angegebene Datei nicht finden。
错误是由以下行引发的:
WebApiConfig.Register(GlobalConfiguration.Configuration);
我该如何解决这个问题?我已经通过 NuGet 安装了最新的 System.Net.Http DLL 版本并在 web.config 中添加了一个连接:
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.3.4.0" newVersion="4.3.4.0" />
</dependentAssembly>
这一切都没有帮助。
【问题讨论】:
修改配置文件后是否进行了干净的构建?我认为 .proj 文件中的版本是错误的。您可能需要编辑 proj 文件并更正。要找到正确的版本,请创建一个定义了 Http 的新简单项目。然后在新项目中打开 .proj 文件,并将 http 版本与旧项目进行比较。 【参考方案1】:我在this 答案中找到了解决方案。我的 web.config 文件充满了强制性文件的重定向。我发现,我所有基于使用模板的其他项目都没有这些重定向。因此,我使用链接答案中描述的方法进行修复。
【讨论】:
以上是关于Microsoft WebAPI 要求 System.Net.Http,版本=4.0.0.0的主要内容,如果未能解决你的问题,请参考以下文章
Microsoft.Net.Http 与 Microsoft.AspNet.WebApi.Client
Microsoft.AspNet.WebApi.Core 和过时的库
TFS 2018 Microsoft.VisualStudio.Services.WebApi.VssServiceResponseException:找不到页面