Visual Studio 2022运行.NET Core 3.1应用报错,求修复方案
问题详情
安装Visual Studio 2022后创建新的ASP.NET Core 3.1 Web API应用,构建正常,但在Visual Studio中通过Kestrel运行时抛出以下错误:
System.IO.FileNotFoundException: 'Could not load file or assembly 'System.Runtime, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. Nie można odnaleźć określonego pliku.'
通过CLI执行dotnet run或在Rider IDE中运行时无此错误。
环境信息
.NET版本信息
dotnet --version 8.0.100 dotnet --list-sdks 3.1.426 [C:\Program Files\dotnet\sdk] 8.0.100 [C:\Program Files\dotnet\sdk] dotnet --list-runtimes Microsoft.AspNetCore.All 2.1.30 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] Microsoft.AspNetCore.App 2.1.30 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.25 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 8.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.NETCore.App 2.1.30 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.25 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 8.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.WindowsDesktop.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 6.0.25 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 8.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Visual Studio安装路径
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\devenv.exe
解决方案
指定项目使用的.NET SDK版本:在项目根目录创建
global.json文件,强制项目使用3.1版本SDK,内容如下:{ "sdk": { "version": "3.1.426" } }创建后重启Visual Studio,重新构建运行项目。
调整调试配置:右键项目→属性→调试,检查"启动"选项是否正常;切换到"环境变量"标签,移除可能存在的.NET 6.0相关环境变量(如
DOTNET_ROOT)后重试。修复Visual Studio安装:打开Visual Studio Installer,选择"修改",在"单个组件"中确保已安装".NET Core 3.1开发工具",完成修改后重启Visual Studio。
清理项目缓存:删除项目目录下的
bin和obj文件夹,在Visual Studio中执行"清理解决方案"→"重建解决方案"后重新运行。
内容的提问来源于stack exchange,提问作者tylkonachwile

