次の方法で共有


Module.ResolveField メソッド

定義

メタデータ トークンで識別されるフィールドを返します。

オーバーロード

ResolveField(Int32)

指定したメタデータ トークンで識別されるフィールドを返します。

ResolveField(Int32, Type[], Type[])

指定したジェネリック型パラメーターで定義されたコンテキストの、指定したメタデータ トークンで識別されるフィールドを返します。

ResolveField(Int32)

ソース:
Module.cs
ソース:
Module.cs
ソース:
Module.cs

指定したメタデータ トークンで識別されるフィールドを返します。

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

パラメーター

metadataToken
Int32

モジュール内のフィールドを識別するメタデータ トークン。

戻り値

指定したメタデータ トークンで識別されるフィールドを表す FieldInfo オブジェクト。

例外

metadataToken は、現在のモジュールのスコープに含まれるフィールドのトークンではありません。

- または -

metadataToken は、親の TypeSpec に要素型 var (ジェネリック型の型パラメーター) または mvar (ジェネリック メソッドの型パラメーター) を含む署名が存在するフィールドを識別します。

metadataToken は、現在のモジュールのスコープで有効なトークンではありません。

注釈

TypeSpec に要素型 ELEMENT_TYPE_VAR または ELEMENT_TYPE_MVARを含むシグネチャがあるフィールドを識別するメタデータ トークンを解決するには、 メソッド オーバーロードを ResolveField(Int32, Type[], Type[]) 使用します。これにより、必要なコンテキストを指定できます。 つまり、ジェネリック型のジェネリック型パラメーターまたはトークンが埋め込まれているジェネリック メソッドに依存するフィールドのメタデータ トークンを解決する場合は、これらの型パラメーターを指定できるオーバーロードを使用する必要があります。

注意

メタデータ トークンに関する情報は、共通言語インフラストラクチャ (CLI) ドキュメント(特にパーティション II: メタデータ定義とセマンティクス)にあります。 詳細については、「 ECMA 335 共通言語インフラストラクチャ (CLI)」を参照してください。

ジェネリック コンテキスト (つまり、ジェネリック型のジェネリック型パラメーター、またはトークンが埋め込まれているジェネリック メソッド) を使用したトークン解決を示すコードについては、 メソッドを ResolveMethod(Int32, Type[], Type[]) 参照してください。

適用対象

ResolveField(Int32, Type[], Type[])

ソース:
Module.cs
ソース:
Module.cs
ソース:
Module.cs

指定したジェネリック型パラメーターで定義されたコンテキストの、指定したメタデータ トークンで識別されるフィールドを返します。

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

パラメーター

metadataToken
Int32

モジュール内のフィールドを識別するメタデータ トークン。

genericTypeArguments
Type[]

トークンがスコープ内にある型のジェネリック型引数を表す Type オブジェクトの配列。その型がジェネリックではない場合は null

genericMethodArguments
Type[]

トークンがスコープ内にあるメソッドのジェネリック型引数を表す Type オブジェクトの配列。そのメソッドがジェネリックではない場合は null

戻り値

指定したメタデータ トークンで識別されるフィールドを表す FieldInfo オブジェクト。

例外

metadataToken は、現在のモジュールのスコープに含まれるフィールドのトークンではありません。

- または -

metadataToken は、親 TypeSpec が要素型 var (ジェネリック型の型パラメーター) または mvar (ジェネリック メソッドの型パラメーター) を含む署名を持つフィールドを識別しますが、必要なジェネリック型引数が genericTypeArgumentsgenericMethodArguments の両方またはいずれかに提供されていません。

metadataToken は、現在のモジュールのスコープで有効なトークンではありません。

注釈

Type.GetGenericArguments ジェネリック型 metadataToken 引数の配列を取得するには、 がスコープ内にある 型で メソッドを使用します genericTypeArguments。 の MethodInfo.GetGenericArguments ジェネリック型引数の配列を取得するには、 がスコープ内にある メソッドで メソッド metadataToken を使用します genericTypeArguments。 必要ない場合でも、これらの引数を指定しても常に安全です。

注意

メタデータ トークンに関する情報は、共通言語インフラストラクチャ (CLI) ドキュメント(特にパーティション II: メタデータ定義とセマンティクス)にあります。 詳細については、「 ECMA 335 共通言語インフラストラクチャ (CLI)」を参照してください。

ジェネリック コンテキスト (つまり、ジェネリック型のジェネリック型パラメーター、またはトークンが埋め込まれているジェネリック メソッド) を使用したトークン解決を示すコードについては、 メソッドを ResolveMethod(Int32, Type[], Type[]) 参照してください。

適用対象