c# - 检测到包将 : Microsoft. NETCore.App 从 2.1.3 降级到 2.1.0

标签 c# .net .net-core nuget

我尝试将我的 .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 之间的降级问题,但解决方案的效果相同。

https://github.com/dotnet/cli/issues/9624

关于c# - 检测到包将 : Microsoft. NETCore.App 从 2.1.3 降级到 2.1.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52065111/

相关文章:

c# - 网站在 IIS 中运行时无法找到 DLL

c# - .NET Maui 不确定进度条

.net - 如何防止用户将数据输入 DataGridViewComboBoxCells?

.net - 是否可以通过路径而不是 GUID 在托管项目中引用 COM DLL?

c# - ASP.NET Core 1.1 本地化通用服务

c# - 为 .net 核心控制台应用程序创建签名和通知的 MacOS 安装程序

configuration - .net 核心应用程序的子进程正在使用父进程的配置文件

c# - 使用 NLog 在 ASP.NET Core 中记录异常

c# - 将 Datagrid 行的可见性设置为折叠似乎会破坏滚动条?

c# - 预发行包之间的Nuget依赖关系