Azure浏览器循环,无法加载文件或程序集System.Web.Http 5.2.0.0

本文关键字:System 程序集 Web Http 文件 循环 浏览器 加载 Azure | 更新日期: 2023-09-27 18:14:43

我不能再部署我的azure webrole了,它无限期地循环。所以我打开Intellitrace,我发现了这个例外:

异常:抛出:"无法加载角色入口点,由于以下异常:system . io . fileloadeexception:无法加载文件或程序集Http,版本=5.0.0.0,文化=中性,PublicKeyToken=31bf3856ad364e35'或其依赖项之一。的定位程序集的清单定义与程序集不匹配参考。(Exception from HRESULT: 0x80131040)

在我的项目中,web。配置和包(Webapi, webhost等)都在5.2.0.0,所以我不明白为什么Azure试图找到5.0.0.0 ?!

的例子:

<dependentAssembly>
    <assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-5.2.0.0" newVersion="5.2.0.0" />
</dependentAssembly>

你知道吗?由于

ps: System.Web.Http got copy local:true

Azure浏览器循环,无法加载文件或程序集System.Web.Http 5.2.0.0

智能输出告诉您WaIISHost.exe正在崩溃("无法加载角色入口点")。但是你的网。配置程序集绑定重定向只影响w3wp.exe进程。您有几个选项:

  1. 检查你的角色入口点(类派生自RoleEntryPoint,通常是WebRole.cs),确保你引用的是System。Web 5.2 dll .
  2. 为WaIISHost进程创建一个带有绑定重定向的.config文件。为此,您需要创建一个.dll.config。在默认的web角色项目中,这将是WebRole1.dll.config。
相关文章: