MacOS下VSCode中如何查看.NET依赖包的C#代码实现?
在MacOS的VSCode中查看.NET依赖包代码实现的方法
前提条件
- 使用 Visual Studio Code
Version: 1.63.2 (Universal) - 操作系统为带M1芯片的MacOS Monterey 12.03
- .NET版本为
6.0.302
问题背景
此前使用Python,近期转用C#(主要是ASP.NET Core 6),希望在VSCode中实现类似PyCharm的功能:直接跳转查看已安装依赖包内方法/类的代码实现(比如PyCharm中查看flask-login的login_user函数逻辑)。目前在VSCode中只能查看依赖的接口代码,按下go to implementation时提示Implementation not found,仅调试会话中能跳转,但不符合便捷查看源码、设置断点的需求。已尝试JetBrains Rider可实现该功能,但希望在VSCode中完成。
可行方案
在MacOS的VSCode中完全可以实现该功能,可通过以下两种方式配置:
方式一:利用官方符号服务器与C# Dev Kit扩展
- 打开VSCode设置(快捷键
Cmd+,),搜索dotnet symbol servers,勾选Enable downloading of symbols from symbol servers选项,让VSCode能获取官方依赖包的符号与源码。 - 安装微软官方的C# Dev Kit扩展(替代旧版C#扩展),它集成了源码导航、符号下载和反编译功能。
- 重启VSCode后打开.NET项目,右键点击依赖包中的类/方法,选择
Go to Implementation或按F12,VSCode会自动下载对应源码(若官方提供);若无官方源码,会自动反编译出可读代码,支持设置断点。
方式二:使用ILSpy扩展反编译第三方包
若部分第三方NuGet包未上传符号到官方服务器,可安装VSCode的ILSpy Extension插件:
- 安装完成后,右键点击项目依赖中的目标DLL,或直接在代码中右键类/方法,选择
ILSpy: Decompile即可查看反编译后的代码实现,同样支持跳转和断点设置。
内容的提问来源于stack exchange,提问作者IDobrodushniy
相关产品推荐
相关产品推荐

