nuget 包与其引用的 nuget 包之间的不同版本

Different versions between a nuget package and its referenced nuget packages

我有一个 Azure 函数(版本 3,dotnet 3.1)引用了以下 nuget 包:

Microsoft.Extensions.Configuration

当我尝试安装这个 nuget 时,我得到了包的版本 5.x,这导致安装

Microsoft.Extensions.Configuration.Abstractions

但是 运行 我的函数有冲突。在其他几个主题上找到的解决方案是降级 nuget 包,因为 Azure 函数不支持 Microsoft.Extensions.Configuration.Abstractions 包的 5.0 依赖项。

所以我在包管理器控制台中执行以下命令行来安装初始 nuget 包:

Install-Package Microsoft.Extensions.Configuration -Version 3.1.14 -DependencyVersion Lowest

但它始终安装依赖项“Microsoft.Extensions.Configuration.Abstractions”

的版本 5.x

下载正确版本的依赖项有什么建议吗?

我用了你给的命令,一切似乎都没有问题:

1. 如评论中Sara Liu-MSFT所述,您可能需要检查其他程序集是否引用了Microsoft.Extensions.Configuration.Abstractions。如果是这样,您可能需要降级该程序集。

您可以在这里查看:

2. 或者您可以尝试手动引用 Microsoft.Extensions.Configuration.Abstractions 程序集:

<PackageReference Include="Microsoft.Extensions.Configuration.Abstractions" Version="3.1.14" />