VSCode中C#集成功能异常:无法执行代码、选择解决方案、测试及调试
我之前也碰到过一模一样的情况——明明装了官方的C#、C# Dev Kit和.NET Install Tool扩展,打开项目文件夹后编辑代码、语法高亮、错误提示都正常,一调试就弹出那句No C# project is currently loaded. Please create a C# project in order to debug.,但文件夹里明明有csproj和sln文件,别提有多闹心了!给你几个亲测有效的解决思路:
强制重新加载项目/窗口:有时候VSCode只是没正确识别到项目文件,按
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(Mac)调出命令面板,输入Reload Window重启整个窗口;或者直接输入C#: Reload Projects,让C#扩展专门重新扫描加载项目文件,大概率能解决识别问题。检查csproj文件的有效性:打开你的csproj文件看看有没有XML格式错误,比如标签没闭合、拼写错误,或者
<TargetFramework>指定的版本和你本地安装的.NET SDK不匹配。可以在终端里运行dotnet build命令试试能不能正常编译,如果编译报错,那就是项目文件本身有问题,跟着错误提示修复就行。排查工作区设置干扰:看看项目根目录下的
.vscode/settings.json里有没有设置files.exclude或search.exclude规则,不小心把csproj、sln文件排除的话,VSCode就识别不到项目了。如果有相关规则,把对应的项目文件路径从排除列表里移除。重置C#扩展状态:有时候OmniSharp(C#扩展的核心服务)的缓存会出问题,调出命令面板输入
C#: Reset OmniSharp,重置后再重新加载项目,能解决不少奇奇怪怪的识别bug。确认.NET SDK版本匹配:打开终端运行
dotnet --list-sdks,看看本地已安装的SDK版本,和你csproj里<TargetFramework>的版本是否一致。比如项目用的是net6.0,但你本地只装了net7.0,就可能导致识别异常,安装对应版本的SDK就行。
备注:内容来源于stack exchange,提问作者Jimmy Bungalo




