我尝试将我的 .NET 解决方案从 .NET Core 1.1 更新到 .NET Core 2.1。我内部有几个 .NET Core 和 .NET 标准项目,它们相互引用并引用另一个 NuGet 包。更新“dotnet resore”和“dotnet build”命令后工作正常,但是当我尝试从 visual studio 构建我的解决方案时,出现此错误:
Error NU1605 Detected package downgrade: Microsoft.NETCore.App from 2.1.3 to 2.1.0. Reference the package directly from the project to select a different version.
而且我看到我的一些项目确实有 SDK 引用 Microsoft.NETCore.App v2.1.0,其中一些项目 v.2.1.3。设置 RuntimeFrameworkVersion 并将此包显式添加到依赖项是行不通的。
我该如何处理?
更新: 网络--信息:
.NET Core SDK (reflecting any global.json): Version: 2.1.401 Commit: 91b1c13032
Runtime Environment: OS Name: Windows OS Version: 10.0.17134 OS Platform: Windows RID: win10-x64 Base Path: C:\Program Files\dotnet\sdk\2.1.401\
Host (useful for support): Version: 2.1.3 Commit: 124038c13e
.NET Core SDKs installed:
1.1.10 [C:\Program Files\dotnet\sdk]
2.0.0 [C:\Program Files\dotnet\sdk]
2.1.4 [C:\Program Files\dotnet\sdk]
2.1.100 [C:\Program Files\dotnet\sdk]
2.1.202 [C:\Program Files\dotnet\sdk]
2.1.400 [C:\Program Files\dotnet\sdk]
2.1.401 [C:\Program Files\dotnet\sdk]
.NET Core runtimes installed: Microsoft.AspNetCore.All 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] Microsoft.AspNetCore.All 2.1.3 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] Microsoft.AspNetCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 2.1.3 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.NETCore.App
1.0.12 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 1.1.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App
2.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 2.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App
2.0.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App
2.1.3 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
To install additional .NET Core runtimes or SDKs: https://aka.ms/dotnet-download
更新: 如果我从 .csproj 文件中删除这一行,问题就会以某种方式消失:
<RuntimeIdentifier>win7-x64</RuntimeIdentifier>
有关系吗?
最佳答案
我和你有类似的问题。指定运行时标识符时无法发布我的项目。
我开始工作的解决方案是将以下行添加到 *.csproj
<PropertyGroup>
<TargetFramework> xxx </TargetFramework>
<TargetLatestRuntimePatch>true</TargetLatestRuntimePatch> <<<----- Add this line
</PropertyGroup>
添加该行后,项目将正确发布。
以下链接提到了 2.1.1 和 2.1.0 之间的降级问题,但解决方案的效果相同。
关于c# - 检测到包将 : Microsoft. NETCore.App 从 2.1.3 降级到 2.1.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52065111/