从ILSpy中的字节数组中反编译IL

时间:2017-10-18 15:04:59

标签: c# ilspy

我目前正在使用编译器(转换器?)从methbases到使用ILSpy的C#表达式树。我遇到的一般问题是将System.Reflection.MethodBases链接到ILSpy输出的NRefactory AST中正确的methodDeclarations。

我很清楚ILSpy能够为整个程序集提供AST,例如:

            AssemblyDefinition pAssembly = AssemblyDefinition.ReadAssembly(filename, parameters);
            AstBuilder pDecompiler = new AstBuilder(new DecompilerContext(pAssembly.MainModule));

            pDecompiler.AddAssembly(pAssembly);
            pDecompiler.RunTransformations();
            ast = pDecompiler.SyntaxTree;

但是,是否可以调用ILSpy获取一小段IL,例如您可以通过调用获取:

m.GetMethodBody().GetILAsByteArray()

这样可以很容易地解决方法库配对问题,目前我有一个非常可怕的解决方案。

0 个答案:

没有答案