Azure 失败无法加载文件或程序集'System.Net.Http,版本=4.2.0.0
Azure failing Could not load file or assembly 'System.Net.Http, Version=4.2.0.0
我收到这个错误有一段时间了。
奇怪的是,我只在将应用程序发布到 Azure 时才收到此错误,在本地没问题。
我厌倦了将重定向更改为:
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.1.1.0" />
</dependentAssembly>
我在网上看过,但运气不佳。
该应用本身是一个使用框架 4.7.2 的 Umbraco 网站
任何帮助都会很棒!
更新 -
我将 System.Net.Http 作为对我的 Web 项目的引用并将本地副本设置为 true,这意味着 DLL 已发布但现在出现错误:
我尝试添加以下内容:
<add assembly="System.Web.Http, Version=4.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
我也试过这个:
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
</dependentAssembly>
希望对您有所帮助
解决这个问题应该相当简单:在您的 web.config
中找到 compilation\assemblies 部分并在 System.Net.Http
下添加 System.Web.Http
程序集:
<add assembly="System.Web.Http, Version=4.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
另一件可能有用的事情是,如果您在编译代码时遇到错误,请尝试参考 System.Web.Http
版本 4.2 并将 构建操作 设置为 copy本地.
更多细节,你可以参考这个article。
我设法通过删除对 System.Http.Net 的所有引用、从 NuGet 卸载它、删除 DLL 形式((c:\Program Files (x86)\Microsoft Visual Studio17\Enterprise\MSBuild\Microsoft\Microsoft.NET.Build.Extensions\net461\lib)
然后我通过 NuGet 再次安装它,但安装的是最新版本,并从 web.config 中删除了所有额外的绑定重定向。
这就解决了这个问题。
谢谢
我收到这个错误有一段时间了。
奇怪的是,我只在将应用程序发布到 Azure 时才收到此错误,在本地没问题。
我厌倦了将重定向更改为:
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.1.1.0" />
</dependentAssembly>
我在网上看过,但运气不佳。
该应用本身是一个使用框架 4.7.2 的 Umbraco 网站
任何帮助都会很棒!
更新 - 我将 System.Net.Http 作为对我的 Web 项目的引用并将本地副本设置为 true,这意味着 DLL 已发布但现在出现错误:
我尝试添加以下内容:
<add assembly="System.Web.Http, Version=4.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
我也试过这个:
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
</dependentAssembly>
希望对您有所帮助
解决这个问题应该相当简单:在您的 web.config
中找到 compilation\assemblies 部分并在 System.Net.Http
下添加 System.Web.Http
程序集:
<add assembly="System.Web.Http, Version=4.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
另一件可能有用的事情是,如果您在编译代码时遇到错误,请尝试参考 System.Web.Http
版本 4.2 并将 构建操作 设置为 copy本地.
更多细节,你可以参考这个article。
我设法通过删除对 System.Http.Net 的所有引用、从 NuGet 卸载它、删除 DLL 形式((c:\Program Files (x86)\Microsoft Visual Studio17\Enterprise\MSBuild\Microsoft\Microsoft.NET.Build.Extensions\net461\lib)
然后我通过 NuGet 再次安装它,但安装的是最新版本,并从 web.config 中删除了所有额外的绑定重定向。
这就解决了这个问题。
谢谢