Azure DevOps 管道上的 Nuget 还原失败

Nuget Restore fails on Azure DevOps Pipeline

我的 .net core 3.0 API 项目无法在 Azure Devops 管道上构建,因为还原包任务失败并出现此错误:

NU1605: Detected package downgrade: Microsoft.AspNetCore.Razor.Design from 2.2.0 to 2.1.2. Reference the package directly from the project to select a different version. WebApi -> Microsoft.AspNetCore.App 2.2.0 -> Microsoft.AspNetCore.Razor.Design (>= 2.2.0 && < 2.3.0) WebApi -> Microsoft.AspNetCore.Razor.Design (>= 2.1.2))

我不知道该怎么办。这个 Razor.Design 包甚至没有在我的项目中引用,但我想 AspNetCore.App 依赖于它(那么为什么没有这个包它在本地工作对我来说是一个谜)。

我是 运行 Agent 上的管道,图像是 Windows 2019。 dotnetcore30应该不是问题。

对于这个问题,没有你的项目文件,我不确定你的项目结构和包依赖关系。

但是正如错误信息Reference the package directly from the project to select a different version所指出的,通常在这种情况下我们可以尝试直接引用特定版本的特定包来解决它。

<PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.2.0" PrivateAssets="all" />

另外,这里有官方document介绍了一些示例和针对此类问题的相应解决方案,您可以查看以进行故障排除。