แก้ไข

แชร์ผ่าน


Module.ResolveMember Method

Definition

Returns the type or member identified by a metadata token.

Overloads

ResolveMember(Int32)

Returns the type or member identified by the specified metadata token.

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

Returns the type or member identified by the specified metadata token, in the context defined by the specified generic type parameters.

ResolveMember(Int32)

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

Returns the type or member identified by the specified metadata token.

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

Parameters

metadataToken
Int32

A metadata token that identifies a type or member in the module.

Returns

A MemberInfo object representing the type or member that is identified by the specified metadata token.

Exceptions

metadataToken is not a token for a type or member in the scope of the current module.

-or-

metadataToken is a MethodSpec or TypeSpec whose signature contains element type var (a type parameter of a generic type) or mvar (a type parameter of a generic method).

-or-

metadataToken identifies a property or event.

metadataToken is not a valid token in the scope of the current module.

Remarks

To resolve a metadata token for a MethodSpec or TypeSpec whose signature contains element type ELEMENT_TYPE_VAR or ELEMENT_TYPE_MVAR, use the ResolveMember(Int32, Type[], Type[]) method overload, which allows you to supply the necessary context. That is, when you are resolving a metadata token for a member that depends on the generic type parameters of the generic type and/or the generic method in which the token is embedded, you must use the overload that allows you to supply those type parameters.

Note

Information about metadata tokens can be found in the Common Language Infrastructure (CLI) documentation, especially "Partition II: Metadata Definition and Semantics". For more information, see ECMA 335 Common Language Infrastructure (CLI).

For code that demonstrates token resolution using the generic context (that is, the generic type parameters of the generic type and/or the generic method in which the token is embedded) see the ResolveMethod(Int32, Type[], Type[]) method.

Applies to

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

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

Returns the type or member identified by the specified metadata token, in the context defined by the specified generic type parameters.

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

Parameters

metadataToken
Int32

A metadata token that identifies a type or member in the module.

genericTypeArguments
Type[]

An array of Type objects representing the generic type arguments of the type where the token is in scope, or null if that type is not generic.

genericMethodArguments
Type[]

An array of Type objects representing the generic type arguments of the method where the token is in scope, or null if that method is not generic.

Returns

A MemberInfo object representing the type or member that is identified by the specified metadata token.

Exceptions

metadataToken is not a token for a type or member in the scope of the current module.

-or-

metadataToken is a MethodSpec or TypeSpec whose signature contains element type var (a type parameter of a generic type) or mvar (a type parameter of a generic method), and the necessary generic type arguments were not supplied for either or both of genericTypeArguments and genericMethodArguments.

-or-

metadataToken identifies a property or event.

metadataToken is not a valid token in the scope of the current module.

Remarks

Use the Type.GetGenericArguments method on the type where metadataToken is in scope to obtain an array of generic type arguments for genericTypeArguments. Use the MethodInfo.GetGenericArguments method on the method where metadataToken is in scope to obtain an array of generic type arguments for genericTypeArguments. It is always safe to provide these arguments, even when they are not needed.

Note

Information about metadata tokens can be found in the Common Language Infrastructure (CLI) documentation, especially "Partition II: Metadata Definition and Semantics". For more information, see ECMA 335 Common Language Infrastructure (CLI).

For code that demonstrates token resolution using the generic context (that is, the generic type parameters of the generic type and/or the generic method in which the token is embedded) see the ResolveMethod(Int32, Type[], Type[]) method.

Applies to