我有一个API和一个独立的Azure Functions应用程序。我将API应用程序升级到了.NET 5
,它工作得很好。在API应用程序的解决方案中,我有类库项目,在我的Azure Functions应用程序中也引用了这些类库。这些类库是netstandard2.1
项目。
自从这次更新以来,在此期间我还将所有NuGet包更新到了最新版本,我的Azure Functions应用程序就停止工作了。我收到以下错误提示:
无法加载文件或程序集“Microsoft.Extensions.Configuration.Abstractions,Version=5.0.0.0,Culture=neutral,PublicKeyToken=adb9793829ddae60”。系统找不到指定的文件。值不能为 null。(参数“provider”)
我注意到Microsoft.Extensions.*
包有一些破坏性变化,他们的建议是直接安装导致问题的包。所以我手动向我的Azure Functions添加了Microsoft.Extensions.Configuration.Abstractions
-- 之前它是作为Microsoft.Extensions.Configuration
包的依赖项被安装的。以下是关于此事的信息:https://github.com/dotnet/aspnetcore/issues/21033
问题仍然存在。我甚至尝试将API和Functions应用程序中的Microsoft.Extensions.Configuration
版本降级,但仍然收到相同的错误。
你有什么解决这个问题的想法吗?
Microsoft.Extensions.*
降级到3.1.10
可以解决这个问题。之前这个方法对我没有用,因为我只降级了Microsoft.Extensions.Configuration
但没有降级Microsoft.Extensions.DependencyInjection
。显然,有共享库,所以所有的Microsoft.Extensions.*
都必须被降级。谢谢! - SamMicrosoft.Extensions.Configuration.Abstractions
对我也没有用!唯一的解决方案似乎是回到所有Microsoft.Extensions.*
包的版本3.1.10
。 - Sam