[英]Could not load file or assembly "System.Net.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
[英]Azure app service - Could not load file or assembly 'System.Net.Http, Version=4.2.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
得到一个
无法加载文件或程序集'System.Net.Http,Version = 4.2.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其依赖项之一。 系统找不到指定的文件。“作为App Service发布到Azure后出现异常。
我使用Entity Framework DB First方法创建了一个ASP.NET Wep API应用程序。 我没有使用任何NuGet包来安装System.Net.Http,它是在创建项目时自动添加的。 最新版本是4.2.0.0。
当我在本地IIS(IIS Express)上运行时,它工作正常。
我已成功将此应用程序作为Azure应用程序服务发布,但它未打开API主页。 相反,我得到了上面提到的例外。
我尝试在Web.config中使用bindingRedirect,但它没有帮助。
我是Azure的新手,不知道如何部署dll。 任何帮助是极大的赞赏。
升级后的项目为4.7.2。
当为System.Net.HTTP
安装.NET 4.3.3 Nuget包时,结果是Visual Studio 2017.HTTP也在从GAC添加DLL引用。 这与程序集重定向一起导致运行时System.IO.FileNotFoundException
查找System.Net.Http的版本4.2.0.0。
好消息是添加引用, 取消选中GAC中的System.Net.Http (在一个时间点自动添加或由项目中的其他开发人员添加),并简单地删除程序集重定向。
有关更多详细信息,请参阅此文章 。
我认为找到了问题的原因。 我的项目使用的是.Net framework版本4.7.2,而在Azure上,应用服务正在使用.Net framework版本4.7。 因此,将项目属性中的目标框架更改为4.7似乎可行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.