MethodBody 类中有一个 GetILAsByteArray 方法,它给出了方法的主体。我正在寻找将此字节数组转换为更易于理解的 IL 指令(转换为 List 或类似的东西)。有哪些资源、开源代码或 api 可以帮助我理解和转换这个字节数组(或为我做)?
我发现了这个,但它不适用于泛型。我几乎在寻找在所有框架版本中转换理解这些字节的指导。
CLI 文档也有助于学习 IL 指令,但我不知道如何使用它来使这些字节有意义。
最佳答案
我刚刚编写了一个扩展方法,以使用 GetILAsByteArray 获得更易于理解的指令列表。很简单,API 是这样的:
public static IList<Instruction> GetInstructions (this MethodBase self);
您可以在我的 blog post 中阅读有关实现的更多信息.或者你可以去implementation并开始使用它。
关于cil - 用于从字节数组中获取 IL 的 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/416265/