无法加载文件或程序集“Microsoft.Extensions.Logging.Abstractions”

Ank*_*mar 13 azure-functions

我正在部署一个函数,我能够在 Visual Studio 的函数应用 V2 中成功构建和发布它,但在 azure 门户中,我在函数应用中看到以下消息。我已经添加了必要的包,但仍然没有用。有没有人遇到过这个错误并有任何反馈。Visual Studio 的输出窗口中也没有错误。

如果我删除此版本的抽象,那么它会显示在 3.1.5 版中找不到文件。当我添加版本 3.1.5 时,它说找不到文件。不知道出了什么问题。在 github 中有一个讨论,但该线程现在已关闭,没有太多信息

谢谢

System.Private.CoreLib:无法加载文件或程序集“Microsoft.Extensions.Logging.Abstractions,版本=5.0.0.0,Culture=neutral,PublicKeyToken=adb97829ddae60”。该系统找不到指定的文件。System.Private.CoreLib:无法加载指定的文件。

mfa*_*mfa 14

我刚刚遇到了类似的问题。对我来说,问题是我已经包含了其中一个Microsoft.Extensions.xxx包,Version="5.0.0"但我的目标框架是netcoreapp3.1.

将引用的扩展包的版本更改为与我的目标框架相同的版本解决了错误。

例如

改变:

<PackageReference Include="Microsoft.Extensions.Http" Version="5.0.0" />
Run Code Online (Sandbox Code Playgroud)

到:

<PackageReference Include="Microsoft.Extensions.Http" Version="3.1.10" />
Run Code Online (Sandbox Code Playgroud)

真正的问题是我在dotnet add package Microsoft.Extensions.xxx没有指定版本的情况下运行,所以它只是添加了最新的可用版本。

  • GitHub 问题:https://github.com/Azure/azure-functions-core-tools/issues/2304 正如一条评论中提到的,有趣的是 5.0.0 包无法工作,尽管它们声称支持 .NET Standard 2.0 。 (2认同)

Ank*_*mar 2

我通过更改函数运行时版本来修复它。它被设置为 ~2 。我将其更改为 ~3,错误就消失了。

您可以在“函数应用程序”->“配置”->“函数运行时”中执行此操作