更新到 .net 6 后管道不工作

Pipeline not work after updating to .net 6

我已经将我的网站更新为 .net 6。它也可以在本地运行。但是,我在 Azure DevOps 中的 yaml 管道不再是 运行。像这样的解决方案中所有 .csproj 文件的发布步骤都存在错误。我不知道,如何配置它应该使用 .net 6。

C:\Program Files\dotnet\sdk.0.403\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.TargetFrameworkInference.targets(141,5): error NETSDK1045: The current .NET SDK does not support targeting .NET 6.0.  Either target .NET 5.0 or lower, or use a version of the .NET SDK that supports .NET 6.0. [D:\a\s_Contracts\Contracts\Contracts.csproj]
##[error]Error: The process 'C:\Program Files\dotnet\dotnet.exe' failed with exit code 1

这是发布的流水线步骤。

- task: DotNetCoreCLI@2
  displayName: 'dotnet publish'
  inputs:
    command: publish
    publishWebProjects: false
    projects: '**/*.csproj'
    arguments: '-r linux-x64 --output $(build.artifactstagingdirectory)'

您需要先在代理中安装.NET 6 SDK,在DotNetCoreCLI:

之前添加
- task: UseDotNet@2
  displayName: 'Install .NET Core sdk 6.x'
  inputs:
    version: 6.x

如果你在 Gui 中创建了管道,你应该删除旧的管道并创建一个新的,它对我有用

您还需要指定应用程序池以使用.net 6.0 框架:

pool:
  vmImage: windows-2022

- task: UseDotNet@2
  displayName: 'Use .NET Core sdk'
  inputs:
  packageType: 'sdk'
  version: '6.0.x'
  includePreviewVersions: true