Module.ResolveMember 方法

定义

返回由元数据令牌标识的类型或成员。

重载

ResolveMember(Int32)

返回由指定的元数据令牌标识的类型或成员。

ResolveMember(Int32, Type[], Type[])

在由指定的泛型类型参数定义的上下文中,返回由指定的元数据令牌标识的类型或成员。

ResolveMember(Int32)

Source:
Module.cs
Source:
Module.cs
Source:
Module.cs

返回由指定的元数据令牌标识的类型或成员。

C#
public System.Reflection.MemberInfo? ResolveMember (int metadataToken);
C#
public System.Reflection.MemberInfo ResolveMember (int metadataToken);

参数

metadataToken
Int32

一个元数据令牌,用于标识模块中的类型或成员。

返回

一个 MemberInfo 对象,表示由指定的元数据令牌标识的类型或成员。

例外

metadataToken 不是当前模块范围内的类型或成员的令牌。

- 或 -

metadataToken 是一个 MethodSpecTypeSpec,其签名包含元素类型 var(泛型类型的类型参数)或 mvar(泛型方法的类型参数)。

- 或 -

metadataToken 标识一个属性或事件。

metadataToken 不是当前模块范围内的有效令牌。

注解

若要解析 签名包含元素类型 ELEMENT_TYPE_VAR 或 的 或 TypeSpecELEMENT_TYPE_MVARMethodSpec元数据标记,请使用 ResolveMember(Int32, Type[], Type[]) 方法重载,该方法允许您提供必要的上下文。 也就是说,在解析依赖于泛型类型的泛型类型参数和/或嵌入令牌的泛型方法的成员的元数据标记时,必须使用允许提供这些类型参数的重载。

备注

有关元数据令牌的信息,请参阅公共语言基础结构 (CLI) 文档,尤其是“分区 II:元数据定义和语义”。 有关详细信息,请参阅 ECMA 335 公共语言基础结构 (CLI)

对于使用泛型上下文 (演示令牌解析的代码,即嵌入标记的泛型类型和/或泛型方法的泛型类型参数) 请参阅 ResolveMethod(Int32, Type[], Type[]) 方法。

适用于

.NET 9 和其他版本
产品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

ResolveMember(Int32, Type[], Type[])

Source:
Module.cs
Source:
Module.cs
Source:
Module.cs

在由指定的泛型类型参数定义的上下文中,返回由指定的元数据令牌标识的类型或成员。

C#
public virtual System.Reflection.MemberInfo? ResolveMember (int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments);
C#
public virtual System.Reflection.MemberInfo ResolveMember (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
C#
public System.Reflection.MemberInfo ResolveMember (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);

参数

metadataToken
Int32

一个元数据令牌,用于标识模块中的类型或成员。

genericTypeArguments
Type[]

一个 Type 对象的数组,表示以下类型的泛型类型参数,在该类型中,令牌在范围内;如果该类型不是泛型类型,则为 null

genericMethodArguments
Type[]

一个 Type 对象的数组,表示以下方法的泛型类型参数,在该方法中,令牌在范围内;如果该方法不是泛型方法,则为 null

返回

一个 MemberInfo 对象,表示由指定的元数据令牌标识的类型或成员。

例外

metadataToken 不是当前模块范围内的类型或成员的令牌。

- 或 -

metadataToken 是一个 MethodSpecTypeSpec,其签名包含元素类型 var(泛型类型的类型参数)或 mvar(泛型方法的类型参数),并且没有为 genericTypeArguments 和(或)genericMethodArguments 提供必要的泛型类型参数。

- 或 -

metadataToken 标识一个属性或事件。

metadataToken 不是当前模块范围内的有效令牌。

注解

Type.GetGenericArguments对 范围内的 类型metadataToken使用 方法,以获取的genericTypeArguments泛型类型参数数组。 对 方法使用 方法, MethodInfo.GetGenericArguments 其中 metadataToken 在 范围内,以获取 的泛型类型参数数组 genericTypeArguments。 提供这些参数始终是安全的,即使不需要它们。

备注

有关元数据令牌的信息,请参阅公共语言基础结构 (CLI) 文档,尤其是“分区 II:元数据定义和语义”。 有关详细信息,请参阅 ECMA 335 公共语言基础结构 (CLI)

对于使用泛型上下文 (演示令牌解析的代码,即嵌入标记的泛型类型和/或泛型方法的泛型类型参数) 请参阅 ResolveMethod(Int32, Type[], Type[]) 方法。

适用于

.NET 9 和其他版本
产品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1