Module.ResolveType 方法

定義

傳回中繼資料語彙基元所識別的型別。

多載

ResolveType(Int32)

傳回指定之中繼資料語彙基元所識別的型別。

ResolveType(Int32, Type[], Type[])

以指定之泛型型別參數所定義的內容,傳回指定之中繼資料語彙基元所識別的型別。

ResolveType(Int32)

來源:
Module.cs
來源:
Module.cs
來源:
Module.cs

傳回指定之中繼資料語彙基元所識別的型別。

public:
 Type ^ ResolveType(int metadataToken);
public Type ResolveType (int metadataToken);
member this.ResolveType : int -> Type
Public Function ResolveType (metadataToken As Integer) As Type

參數

metadataToken
Int32

識別模組內型別的中繼資料語彙基元。

傳回

Type 物件,表示指定之中繼資料語彙基元所識別的型別。

例外狀況

metadataToken 在目前模組的範圍中不是型別的語彙基元。

-或-

metadataTokenTypeSpec,其簽章包含項目型別 var (泛型型別的型別參數) 或 mvar (泛型方法的型別參數)。

metadataToken 在目前模組的範圍中是無效的語彙基元。

備註

若要解析其簽章包含 ELEMENT_TYPE_VARELEMENT_TYPE_MVARTypeSpec 中繼資料權杖,請使用 ResolveType(Int32, Type[], Type[]) 方法多載,這可讓您提供必要的內容。 也就是說,當您解析型別的中繼資料權杖時,該型別取決於泛型型別的泛型型別參數和/或標記內嵌的泛型方法時,您必須使用可讓您提供這些型別參數的多載。

注意

您可以在 Common Language Infrastructure (CLI) 檔中找到中繼資料權杖的相關資訊,特別是「分割區 II:元資料定義和語意」。 如需詳細資訊,請參閱 ECMA 335 Common Language Infrastructure (CLI)

適用於

ResolveType(Int32, Type[], Type[])

來源:
Module.cs
來源:
Module.cs
來源:
Module.cs

以指定之泛型型別參數所定義的內容,傳回指定之中繼資料語彙基元所識別的型別。

public:
 virtual Type ^ ResolveType(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
public:
 Type ^ ResolveType(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
public virtual Type ResolveType (int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments);
public virtual Type ResolveType (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
public Type ResolveType (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
abstract member ResolveType : int * Type[] * Type[] -> Type
override this.ResolveType : int * Type[] * Type[] -> Type
member this.ResolveType : int * Type[] * Type[] -> Type
Public Overridable Function ResolveType (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As Type
Public 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 在目前模組的範圍中不是型別的語彙基元。

-或-

metadataTokenTypeSpec,其簽章包含項目型別 var (泛型型別的型別參數) 或 mvar (泛型方法的型別參數),且未提供 genericTypeArgumentsgenericMethodArguments 其一或兩者的泛型型別引數。

metadataToken 在目前模組的範圍中是無效的語彙基元。

備註

Type.GetGenericArguments在 範圍中的 型 metadataToken 別上使用 方法,以取得 的泛型型別引數 genericTypeArguments 陣列。 在 MethodInfo.GetGenericArguments 範圍中的 方法上使用 方法 metadataToken ,以取得 的泛型型別引數 genericTypeArguments 陣列。 即使不需要這些引數,也一定安全。

注意

您可以在 Common Language Infrastructure (CLI) 檔中找到中繼資料權杖的相關資訊,特別是「分割區 II:元資料定義和語意」。 如需詳細資訊,請參閱 ECMA 335 Common Language Infrastructure (CLI)

針對使用泛型內容 (示範權杖解析的程式碼,也就是泛型型別和/或標記內嵌的泛型方法泛型型別參數,) 請參閱 ResolveMethod(Int32, Type[], Type[]) 方法。

適用於