将我的应用程序升级到Asp.net Core 2.1.1之后,Azure App Service引发了System.BadImageFormatException

时间:2018-06-28 15:49:48

标签: azure asp.net-core badimageformatexception

我将Web应用程序升级到最新的Asp.net Core 2.1.1,然后将其直接从GitHub推送到Azure应用服务。当我访问我的网站时,我得到了500,并且日志显示以下内容

  

System.BadImageFormatException:      在System.Runtime.Loader.AssemblyLoadContext.LoadFromPath(System.Private.CoreLib,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 7cec85d7bea7798e)      在System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyPath(System.Private.CoreLib,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 7cec85d7bea7798e)

关于异常本身的docs表示“动态链接库(DLL)或可执行程序的文件映像无效时引发的异常。”而others mentioned则是因为Azure正在使用x86版本的.net核心。

无论哪种方式,我都无法弄清解决此问题所需要做的工作。谢谢您的帮助。

2 个答案:

答案 0 :(得分:0)

  

如果在升级应用程序和部署较新的程序集时Azure Apps部署发生此异常,请手动删除先前部署中的所有文件。

     

保留不兼容的程序集可能会在部署升级的应用程序时导致System.BadImageFormatException异常。

尝试从以前的部署中手动删除所有文件。

有关更多详细信息,您可以参考此article

答案 1 :(得分:0)

您的应用程序dotnet核心版本 Azure Web应用程序点网核心版本不对齐时,可能会发生此错误。 例如,如果尝试在具有dotnetcore3.0运行时的Web应用程序上部署使用dotnetcore3.1构建的应用程序