有没有办法以可读的形式从 .NET 程序集中检索编译器生成的代码?
Is there any way to retrieve the compiler-generated code from the .NET assembly in a readable form?
例如,如果程序集中的某些 C# class 具有 属性 property
,编译器会生成 set_property
和 get_property
方法,或者如果有是一个 lambda,编译器还会生成 helper class c__DisplayClass
或类似的东西。我用ILDasm反汇编程序集的时候可以看到,但是ILDasm给我看的是IL代码,读起来不是很方便。另一方面,如果我使用 ILSpy 或 Reflector,它们会向我显示我编写的代码,没有 classes 和编译器生成的方法。是否有任何中间方法,允许查看编译器生成的 classes 和方法,但以某种可读的形式,至少比 IL 更具可读性?
哦,我的问题似乎很愚蠢,因为 ILSpy、JustDecompile 和我怀疑的其他反编译器也有阻止 lambda 反编译的选项。
例如,如果程序集中的某些 C# class 具有 属性 property
,编译器会生成 set_property
和 get_property
方法,或者如果有是一个 lambda,编译器还会生成 helper class c__DisplayClass
或类似的东西。我用ILDasm反汇编程序集的时候可以看到,但是ILDasm给我看的是IL代码,读起来不是很方便。另一方面,如果我使用 ILSpy 或 Reflector,它们会向我显示我编写的代码,没有 classes 和编译器生成的方法。是否有任何中间方法,允许查看编译器生成的 classes 和方法,但以某种可读的形式,至少比 IL 更具可读性?
哦,我的问题似乎很愚蠢,因为 ILSpy、JustDecompile 和我怀疑的其他反编译器也有阻止 lambda 反编译的选项。