ModuleBuilder.ResolveType(Int32, Type[], Type[]) 方法

定义

返回由指定元数据标记标识的类型,该类型由指定的泛型类型参数定义的上下文中。

public:
 override Type ^ ResolveType(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Trimming changes metadata tokens")]
public override Type ResolveType(int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments);
public override Type ResolveType(int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments);
public override Type ResolveType(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Trimming changes metadata tokens")>]
override this.ResolveType : int * Type[] * Type[] -> Type
override this.ResolveType : int * Type[] * Type[] -> Type
Public Overrides Function ResolveType (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As Type

参数

metadataToken
Int32

标识模块中的类型的元数据令牌。

genericTypeArguments
Type[]

表示令牌所在范围的类型的泛型类型参数的对象数组 Type ,或者 null 该类型不是泛型类型。

genericMethodArguments
Type[]

表示令牌所在范围的方法的泛型类型参数的对象数组 Type ,或者 null 该方法不是泛型方法。

返回

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

属性

例外

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

-或-

metadataToken是一个TypeSpec签名包含元素类型(泛型类型的var类型参数)或mvar(泛型方法的类型参数),并且未为任一或两者genericTypeArgumentsgenericMethodArguments提供必要的泛型类型参数。

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

注解

Type.GetGenericArguments 范围中的类型 metadataToken 上使用方法获取泛型类型参数 genericTypeArguments的数组。 使用 MethodInfo.GetGenericArguments 范围中的方法 metadataToken 获取泛型类型参数 genericTypeArguments的数组。 即使不需要这些参数,也始终可以安全提供这些参数。

注释

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

有关使用泛型上下文(即泛型类型和/或嵌入令牌的泛型方法的泛型类型参数)演示令牌解析的代码,请参阅该方法 Module.ResolveMethod(Int32, Type[], Type[])

适用于