VS Code中C#生成文件跳转定义失效问题及解决咨询
在VS Code中实现生成文件内符号的「转到定义」功能
目前VS Code的C#相关工具链(原OmniSharp、现C# Dev Kit)在处理反编译生成的临时文件时,确实存在「转到定义」失效的问题——这类文件并非项目的实际组成部分,默认的符号解析逻辑不会遍历其中的符号引用。不过可以通过以下方式解决或优化:
- 启用
Dotnet › Navigation: Navigate To Decompiled Sources选项后,安装ILSpy扩展,它能增强反编译文件内的符号导航能力,支持在反编译代码中继续跳转至目标符号的定义。 - 更新至最新版的C# Dev Kit扩展(微软官方替代旧OmniSharp的工具),新版对跨程序集符号导航做了针对性优化,包括反编译文件内的跳转支持。
- 临时替代方案:若跳转失败,可选中目标符号后执行「查找所有引用」命令,从结果列表中定位到原始程序集的符号入口,再通过反编译查看定义。
对比Visual Studio:VS本身集成了Roslyn引擎与反编译工具的深度整合,所以原生支持该场景;VS Code的相关能力依赖扩展生态,目前已通过上述方式实现类似功能。
内容的提问来源于stack exchange,提问作者Edward Brey
相关产品推荐
相关产品推荐

