Module.ResolveField Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Returns the field identified by a metadata token.
Overloads
ResolveField(Int32) |
Returns the field identified by the specified metadata token. |
ResolveField(Int32, Type[], Type[]) |
Returns the field identified by the specified metadata token, in the context defined by the specified generic type parameters. |
ResolveField(Int32)
- Source:
- Module.cs
- Source:
- Module.cs
- Source:
- Module.cs
Returns the field identified by the specified metadata token.
public:
System::Reflection::FieldInfo ^ ResolveField(int metadataToken);
public System.Reflection.FieldInfo? ResolveField (int metadataToken);
public System.Reflection.FieldInfo ResolveField (int metadataToken);
member this.ResolveField : int -> System.Reflection.FieldInfo
Public Function ResolveField (metadataToken As Integer) As FieldInfo
Parameters
- metadataToken
- Int32
A metadata token that identifies a field in the module.
Returns
A FieldInfo object representing the field that is identified by the specified metadata token.
Exceptions
metadataToken
is not a token for a field in the scope of the current module.
-or-
metadataToken
identifies a field whose parent TypeSpec
has a signature containing element type var
(a type parameter of a generic type) or mvar
(a type parameter of a generic method).
metadataToken
is not a valid token in the scope of the current module.
Remarks
To resolve a metadata token that identifies a field whose parent TypeSpec
has a signature containing element type ELEMENT_TYPE_VAR
or ELEMENT_TYPE_MVAR
, use the ResolveField(Int32, Type[], Type[]) method overload, which allows you to supply the necessary context. That is, when you are resolving a metadata token for a field 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
ResolveField(Int32, Type[], Type[])
- Source:
- Module.cs
- Source:
- Module.cs
- Source:
- Module.cs
Returns the field identified by the specified metadata token, in the context defined by the specified generic type parameters.
public:
virtual System::Reflection::FieldInfo ^ ResolveField(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
public:
System::Reflection::FieldInfo ^ ResolveField(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
public virtual System.Reflection.FieldInfo? ResolveField (int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments);
public virtual System.Reflection.FieldInfo ResolveField (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
public System.Reflection.FieldInfo ResolveField (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
abstract member ResolveField : int * Type[] * Type[] -> System.Reflection.FieldInfo
override this.ResolveField : int * Type[] * Type[] -> System.Reflection.FieldInfo
member this.ResolveField : int * Type[] * Type[] -> System.Reflection.FieldInfo
Public Overridable Function ResolveField (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As FieldInfo
Public Function ResolveField (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As FieldInfo
Parameters
- metadataToken
- Int32
A metadata token that identifies a field 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 FieldInfo object representing the field that is identified by the specified metadata token.
Exceptions
metadataToken
is not a token for a field in the scope of the current module.
-or-
metadataToken
identifies a field whose parent TypeSpec
has a signature containing 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
.
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.