.NET 6 Preview 7执行dotnet watch run提示找不到兼容框架报错
问题解决方法:Blazor Server 项目执行
dotnet watch run 提示 .NET 运行时版本不匹配 - 根因说明:Visual Studio 2022 预览版自带的 PowerShell 控制台会默认将内置的 dotnet 路径优先级设为最高,你当前VS内置的 dotnet 运行时版本为 6.0.0-preview.6,低于新建 Blazor Server 项目要求的 6.0.0-preview.7,因此即使你全局安装了对应版本的SDK,也会因为路径优先级问题调用到低版本dotnet导致报错。
- 解决方法可任选其一:
- 临时生效(仅针对当前PowerShell会话)
在当前PowerShell窗口执行如下命令,调整路径优先级,优先调用系统全局安装的dotnet:
执行完成后运行$env:PATH = "C:\Program Files\dotnet\;$env:PATH"dotnet --version确认版本为 6.0.0-preview.7 后,再执行dotnet watch run即可正常启动。 - 永久生效
打开系统环境变量配置面板,编辑系统变量中的Path项,将C:\Program Files\dotnet\的排列顺序移动到C:\Program Files\Microsoft Visual Studio\2022\Preview\dotnet\之前,保存配置后重启Visual Studio和PowerShell即可永久生效。 - 适配当前VS内置运行时(无需修改环境变量)
打开项目根目录的.csproj文件,将目标框架配置项修改为你当前可用的preview6版本:
把<TargetFramework>net6.0-preview.7</TargetFramework>修改为<TargetFramework>net6.0-preview.6</TargetFramework>,保存后重新执行dotnet watch run即可。
- 临时生效(仅针对当前PowerShell会话)
内容的提问来源于stack exchange,提问作者Shaun Roach
相关产品推荐
相关产品推荐

