Module.ResolveMember 方法

定義

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

多載

ResolveMember(Int32)

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

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

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

ResolveMember(Int32)

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

public:
 System::Reflection::MemberInfo ^ ResolveMember(int metadataToken);
public System.Reflection.MemberInfo? ResolveMember (int metadataToken);
public System.Reflection.MemberInfo ResolveMember (int metadataToken);
member this.ResolveMember : int -> System.Reflection.MemberInfo
Public Function ResolveMember (metadataToken As Integer) As MemberInfo

參數

metadataToken
Int32

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

傳回

MemberInfo

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

例外狀況

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

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

-或- metadataToken 識別屬性或事件。

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

備註

若要解析的中繼資料 token MethodSpecTypeSpec 其簽章包含元素類型 ELEMENT_TYPE_VAR 或的 ELEMENT_TYPE_MVAR ,請使用方法多載,這樣可 ResolveMember(Int32, Type[], Type[]) 讓您提供所需的內容。 也就是說,當您解析的成員的元資料標記相依于泛型型別的泛型型別參數和(或)內嵌標記的泛型方法時,您必須使用可讓您提供這些型別參數的多載。

注意

您可以在通用語言基礎結構 (CLI) 檔中找到中繼資料權杖的相關資訊,特別是「資料分割 II:元資料定義和語義」。 檔可在線上取得;請參閱 ECMA 網站上的 Ecma c # 和 Common Language 基礎結構標準 (MSDN 和 標準 ECMA-335-Common language 基礎結構 (CLI) )

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

適用於

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

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

public:
 virtual System::Reflection::MemberInfo ^ ResolveMember(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
public:
 System::Reflection::MemberInfo ^ ResolveMember(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
public virtual System.Reflection.MemberInfo? ResolveMember (int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments);
public virtual System.Reflection.MemberInfo ResolveMember (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
public System.Reflection.MemberInfo ResolveMember (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
abstract member ResolveMember : int * Type[] * Type[] -> System.Reflection.MemberInfo
override this.ResolveMember : int * Type[] * Type[] -> System.Reflection.MemberInfo
member this.ResolveMember : int * Type[] * Type[] -> System.Reflection.MemberInfo
Public Overridable Function ResolveMember (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As MemberInfo
Public Function ResolveMember (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As MemberInfo

參數

metadataToken
Int32

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

genericTypeArguments
Type[]

Type 物件的陣列,表示語彙基元在範圍中之型別的泛型型別引數,如果該型別不是泛型,則為 null

genericMethodArguments
Type[]

Type 物件的陣列,表示語彙基元在範圍中之方法的泛型型別引數,如果該方法不是泛型,則為 null

傳回

MemberInfo

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

例外狀況

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

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

-或- metadataToken 識別屬性或事件。

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

備註

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

注意

您可以在通用語言基礎結構 (CLI) 檔中找到中繼資料權杖的相關資訊,特別是「資料分割 II:元資料定義和語義」。 檔可在線上取得;請參閱 ECMA 網站上的 Ecma c # 和 Common Language 基礎結構標準 (MSDN 和 標準 ECMA-335-Common language 基礎結構 (CLI) )

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

適用於