Mac版VSCode(v1.69.2)C#类无高亮、无法跳转实现等问题求助
解决Mac下VSCode中C#类无高亮、跳转失效及悬停无提示的问题
问题定位
这不是VSCode的正常表现,你使用的OmniSharp版C#扩展是官方推荐的工具,问题大概率源于OmniSharp服务的项目加载异常或缓存损坏。
解决方案
1. 重置OmniSharp服务与缓存
- 打开命令面板(
⌘+⇧+P),执行OmniSharp: Restart OmniSharp重启服务 - 若无效,手动删除OmniSharp缓存目录:
打开访达,按⌘+⇧+G,输入~/Library/Caches/OmniSharp,删除该文件夹后重启VSCode
2. 检查项目加载日志排查错误
- 打开VSCode的「输出」面板,切换到「OmniSharp Log」标签,查看是否存在项目加载失败、依赖缺失等报错信息
- 验证解决方案文件(
.sln)和项目文件(.csproj)无语法错误,比如缺失程序集引用、XML格式异常
3. 调整OmniSharp加载配置
- 打开VSCode设置(
⌘+,),搜索omnisharp.projectLoadTimeout,将超时时间从默认的30000ms调整为60000ms,避免大项目加载不完整 - 开启
omnisharp.enableMsBuildLoadProjectsOnDemand选项,让OmniSharp按需加载项目,降低初始加载压力
4. 验证.NET环境完整性
- 在终端执行
dotnet --version,确认.NET Core 3.1 SDK已正确安装;执行dotnet --list-sdks可查看已安装的所有SDK版本 - 在项目根目录执行
dotnet restore和dotnet build,确保项目能正常编译,排除项目本身的依赖或编译问题
5. 尝试切换至新版C#扩展(可选)
微软现已推出基于Roslyn的「C# Dev Kit」扩展,对大项目支持更稳定,功能更完整:
- 卸载旧版的「C# (OmniSharp)」扩展
- 安装「C# Dev Kit」和配套的「C#」扩展,重启VSCode后重新加载解决方案
补充说明
正常情况下,VSCode的C#扩展应该支持类高亮、跳转定义、悬停显示命名空间及注释等功能,你遇到的问题属于异常情况,通过上述步骤大多可以解决。
内容的提问来源于stack exchange,提问作者mgmedick
相关产品推荐
相关产品推荐

