You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

VSCode中C#集成功能异常:无法执行代码、选择解决方案、测试及调试

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.excludesearch.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

火山引擎 最新活动