在混淆 .NET 程序集(使用 Dotfuscator)的过程中,我发现自己正在调整事物的重命名方式。这通常涉及查看 ILDASM 中的程序集并将类型追溯到定义它的源代码文件。
通常这是一个简单的过程。但我发现定位匿名类型非常困难——尤其是在大型程序集中。
如果我试图查找匿名类型的位置,例如以下代码行:
new { Name = 'Gene', Age = 30 }
编译为:
<>f__AnonymousType0`2'<'<Name>j__TPar','<Age>j__TPar'>`
并在 ILDASM 树中显示为程序集的根。
如果我想在源代码中定位匿名类型,我将没有太多帮助:
- 没有命名空间
- 没有可搜索的符号
- 解决方案导航器中没有任何内容
- 类视图中没有任何内容
- 对象浏览器中没有任何内容
我错过了什么吗?是否有任何工具可以帮助在代码文件中定位匿名类型?