MethodInfo.MetadataToken 的目的是什么

What is the purpose of MethodInfo.MetadataToken

令牌通常用于什么?更重要的是,如果我有一个MetadataToken,我能取回MethodInfo对象吗?

元数据令牌是关于数据组织方式的 CIL 规范的一部分。这在很大程度上是您永远不需要关心的事情。

更具体地说,元数据令牌是 table 标识符和资源标识符的元组。

您不能依赖元数据标记在编译之间保持一致,因此我不会使用它来标识方法。

您可以使用 Module.ResolveMethod 将元数据标记转换回 MethodBase。 MethodBase 是 MethodInfo 的基类型。如果元数据标记用于方法(而不是构造函数),那么您应该能够将其转换为 MethodInfo。

程序集由一个或多个模块组成,但实际上一个程序集仅包含一个模块 - C# 和 VB.NET 编译器不会生成多模块程序集。