.NET Core 5测试项目构建路径找不到:咨询错误原因与解决方法
错误原因分析
这个错误的核心是MSBuild在构建过程中尝试读取自动生成的testProject.GeneratedMSBuildEditorConfig.editorconfig文件,但指定路径(C:\testProject\obj\Debug\net6.0\)不存在或文件丢失,常见触发原因包括:
- 目标框架版本不匹配:你的项目基于.NET Core 5,但构建过程中误使用了.NET 6的工具链,导致生成了net6.0的目录结构,而实际项目并未配置为该框架
- 构建缓存损坏:obj目录下的缓存文件丢失、损坏或未正确生成,MSBuild无法找到预期的自动生成文件
- SDK/工具链冲突:VS2022默认集成.NET 6 SDK,若未安装.NET 5 SDK,构建时会强制使用高版本工具链,导致路径生成错误
- 项目配置错误:项目文件(.csproj)中存在错误的
<TargetFramework>配置,或<GenerateEditorConfigFiles>相关设置异常
解决步骤
1. 确认项目目标框架一致性
- 右键解决方案中每个项目 → 选择「属性」→ 切换到「应用」标签页
- 检查所有项目的「目标框架」均为 .NET Core 5 (net5.0),若有项目误设为net6.0,修改后保存
2. 清理并重建项目
- 手动删除所有项目下的
obj和bin目录(直接删除文件夹即可) - 打开VS,点击顶部菜单「生成」→「清理解决方案」
- 随后点击「生成」→「重新生成解决方案」
3. 确认.NET 5 SDK已安装
- 打开命令提示符(CMD)或PowerShell,执行命令:
dotnet --list-sdks
- 若输出中没有net5.0开头的版本,下载并安装.NET 5 SDK
4. 锁定SDK版本(可选)
在解决方案根目录创建global.json文件,强制指定使用.NET 5 SDK构建,文件内容如下(替换为你安装的具体版本号):
{ "sdk": { "version": "5.0.408" } }
5. 检查项目文件配置
用文本编辑器打开出现错误的项目的.csproj文件,确认:
<TargetFramework>节点的值为net5.0,而非net6.0- 若存在
<GenerateEditorConfigFiles>节点,确保其值为true(默认开启),若设为false可尝试改为true后重新构建
6. 修复VS安装(最后手段)
若以上方法均无效,打开VS安装器,选择「修改」→ 点击「修复」,修复可能损坏的MSBuild或Roslyn组件
内容的提问来源于stack exchange,提问作者md ni
相关产品推荐
相关产品推荐

