如何阅读.net程序集的元数据表

时间:2015-06-03 08:48:41

标签: metadata clr

我正在阅读Jeffery Richter的书“CLR via C#”。他提到CLR元数据表包含TypeRef和MemberRef部分。

我想通过读取这些MemberRef和TypeRef信息来构建调用图。这样做的最佳方法是什么?搜索后,我发现有人使用PE / CLR文件格式直接读取文件。有人使用本机IMetaDataImport。我想知道是否有任何.net内置类或第三方库这样做?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果要查看元数据,可以使用ILDasm.exe。

示例:ILDasm.exe D:\ MyTestAsm.dll

下一个:查看 - >元信息 - >我们秀!

如果您想从代码中接收数据,可以研究第三方库Mono:

http://www.mono-project.com/docs/tools+libraries/libraries/Mono.Cecil/

MetaData它是IL-code的一部分。如果你想看到Il代码,你可以看到: How to get access to embedded assembly's metadata using IMetaDataDispenser.OpenScope?