工具介绍
VS2022 插件。点击任何方法或类,查看 .NET Core 的 JIT 为它们生成了什么(ASM)。
Disasmo
点击任意方法或类,查看 JIT 的代码生成和更多信息。
特性
- 按热键快速查看代码生成 (默认是 Alt+Shift+D,可在 VS 的设置中更改)
已知问题
- 仅支持使用自定义运行时的 .NET 6.0 及更高版本的项目
- 非自定义运行时模式需要 .NET 7.0 RC1 (或更高版本)
- 我仅对简单的控制台应用程序进行了测试,但它也适用于库
- 通用方法仅支持"运行"模式
- Resharper 默认情况下隐藏 Roslyn 操作(取消勾选"不显示 Visual Studio 灯泡"。)
- 首次启动时,灯泡可能会较慢
- 从类中反汇编方法时,与之关联的 C# Visual Studio 项目或其中一个项目文件必须在解决方案资源管理器中处于活动/选中状态,否则将生成一个空的反汇编窗口。
- 当反汇编使用来自 NuGet 包的代码的方法时,Disasmo 无法找到程序集。解决方案是将程序集复制到项目输出 bin 文件夹中创建的 disasmo 文件夹中。
第三方
VS2022 Add-in.