Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用Azure部署选项时出现依赖项错误(System.Net.Http)-在Visual Studio中发布时有效_C#_Asp.net_Asp.net Mvc_Azure - Fatal编程技术网

C# 使用Azure部署选项时出现依赖项错误(System.Net.Http)-在Visual Studio中发布时有效

C# 使用Azure部署选项时出现依赖项错误(System.Net.Http)-在Visual Studio中发布时有效,c#,asp.net,asp.net-mvc,azure,C#,Asp.net,Asp.net Mvc,Azure,我有一个非常奇怪的情况,我希望有人能帮助我 我有一个普通的ASP.NETMVC网站。我已经设置了“部署选项”,以便在每次developecommit时推送到一个域。但是,这已开始出现依赖项错误: Could not load file or assembly 'System.Net.Http' or one of its dependencies. The located assembly's manifest definition does not match the assembly ref

我有一个非常奇怪的情况,我希望有人能帮助我

我有一个普通的ASP.NETMVC网站。我已经设置了“部署选项”,以便在每次
develope
commit时推送到一个域。但是,这已开始出现依赖项错误:

Could not load file or assembly 'System.Net.Http' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
现在,我认为这是一些缓存,因为解决方案在本地工作。因此,我已经在VisualStudio中发布了几次应用程序(可以选择删除所有远程文件),然后解决方案就可以工作了

但是,执行此操作后,我返回到具有部署选项的正常提交,返回到相同的错误:


首先想到的是,您在解决方案中添加了一个新的DLL,该DLL依赖于System.Net.Http程序集的另一个版本。如果您知道添加了新的DLL,请检查其程序集依赖关系


另一种解决方案可能是在代码中手动指定程序集的版本。然后选择SpecificVersion。(但我猜这是导致问题的第一个原因)。

我曾经遇到过类似的问题。System.Net.Http包之间的版本应不匹配

尝试验证整个解决方案的System.Net.Http版本,并在所有项目中引用相同的版本


如果一个项目中引用了一个包,而另一个项目中引用了同一包的不同版本,则会发生这种情况。在这里,当这两个项目之间存在引用时会发生此错误。

根据您的描述,它似乎在过去成功部署过

你最近升级过这个项目吗?如果是,请看这条线


另外,请检查您是否引用了NuGet而非GAC的DLL。

您所说的“使用部署选项的正常提交”是什么意思?您是否在Azure门户上配置了部署,或者您是否有配置为在提交时生成和部署网站的生成服务器?哪个.net版本是您的应用程序?@RuiJarimba是-Azure Portal中的菜单点:-)因此,当我在Github中提交时,它会触发生成here@Smartis版本4.6.1但为什么我的部署风格会有所不同?我知道这是在我升级了依赖项之后发生的,但这并没有改变为什么发布工作异常奇怪,而门户中的“部署选项”并没有:-)这可能是一个不确定的结果,但发布可能不会覆盖现有的程序集。除此之外,我真的不知道。但出版工作,所以我很肯定它覆盖。挑战在于部署选项…-)他们都引用了同一个版本,不幸的是,这个线程为我解决了这个问题。这是解决问题的承诺: