我知道这是一个重复的问题。但我已经尝试了所有提到的解决方案,但没有得到解决。
我有一个 dotnet c# 应用程序。当我运行该应用程序时,出现以下错误
当前 .NET SDK 不支持面向 .NET 6.0。任何一个 目标为 .NET 5.0 或更低版本,或者使用符合以下要求的 .NET SDK 版本: 支持.NET 6.0。
我尝试过以下所有解决方案
Windows 版本:Windows 11
但是,它仍然不起作用。遇到同样的错误。帮我摆脱这个困境。
就我而言,问题是存在修复 SDK 版本的
global.json 文件:
{
"sdk": {
"version": "5.0.0",
"rollForward": "latestMinor"
}
}
只需将该文件更新为 6.0.0
,错误就消失了。
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
<DockerfileContext>..\..\..</DockerfileContext>
</PropertyGroup>
phases:
install:
commands:
- /usr/local/bin/dotnet-install.sh --channel STS
build:
commands:
- dotnet restore
- dotnet build --configuration Release BackendApi.csproj
- dotnet publish --configuration Release BackendApi.csproj --output ./publish
示例基础和构建 .net 6 命令
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
and for build
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
这位于解决方案属性>构建>常规
原来,有人定义了一个环境变量
MSBuildSDKsPath=C:\Program Files\dotnet\sdk\5.0.402\Sdks
...并且 dotnet 顽固地想使用该 SDK。 我还没有在任何地方找到记录。 取消设置该环境变量就可以了。