通常使用的令牌是什么?更重要的是,如果我有MetadataToken,我可以取回MethodInfo对象吗?
答案 0 :(得分:3)
元数据标记是CIL规范中有关数据组织方式的一部分。这在很大程度上是你永远不需要关心的事情。
更具体地说,元数据标记是表标识符和资源标识符的元组。
您不能依赖元数据标记在编译之间保持一致,因此我不会使用它来识别方法。
您可以使用Module.ResolveMethod
将元数据标记转换回MethodBase。 MethodBase是MethodInfo的基本类型。如果元数据标记用于方法(而不是构造函数),那么您应该能够将其强制转换为MethodInfo。
程序集由一个或多个模块组成,但实际上一个程序集只包含一个模块--C#和VB.NET编译器不生成多模块程序集。