在 Azure 上部署后无法加载文件或程序集“System.IdentityModel.Tokens.Jwt”

San*_*vat 11 asp.net-mvc azure web-deployment

我的 Web 应用程序在 localhost 上运行良好,但是当我在 Azure 上发布它时,出现以下错误:

无法加载文件或程序集“System.IdentityModel.Tokens.Jwt”或其依赖项之一。定位的程序集的清单定义与程序集引用不匹配。(来自 HRESULT 的异常:0x80131040)

在本地主机上工作正常。

我使用的是 4.5 框架,它也在 web.config 文件中定义。我试图在 nuget 管理器中重新安装它,但我得到了

包“System.IdentityModel.Tokens.Jwt.4.0.2.206221351”已存在于项目“project1”中

我也无法在参考文件夹中找到这个程序集。这是我第一次遇到这种类型的问题。

你建议我做什么?

问候, 桑迪

Mar*_*tój 12

Azure Functions 主机中存在一个已知问题:https : //github.com/Azure/azure-functions-host/issues/5894

当前的解决方法是将以下内容添加到您的 .csproj:

<PropertyGroup>
  <_FunctionsSkipCleanOutput>true</_FunctionsSkipCleanOutput>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)


San*_*vat 10

我已经想通了。我通过 nuget 包管理器更新了 System.IdentityModel.Tokens.Jwt 引用,它再次工作。

问候!

  • 我通过 nuget 包获得此引用,并且收到类似但不同的错误消息: Could not load file or assembly 'System.IdentityModel.Tokens.Jwt, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 或它的依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(HRESULT 异常:0x80131040) (2认同)