次の方法で共有


ModuleBuilder.ResolveMethod(Int32, Type[], Type[]) メソッド

定義

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

public:
 override System::Reflection::MethodBase ^ ResolveMethod(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
public override System.Reflection.MethodBase? ResolveMethod (int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments);
public override System.Reflection.MethodBase ResolveMethod (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
override this.ResolveMethod : int * Type[] * Type[] -> System.Reflection.MethodBase
Public Overrides Function ResolveMethod (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As MethodBase

パラメーター

metadataToken
Int32

メソッドまたはモジュール内のコンス トラクターを識別するメタデータ トークン。

genericTypeArguments
Type[]

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

genericMethodArguments
Type[]

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

戻り値

指定したメタデータ トークンで識別されるメソッドを表す MethodBase オブジェクト。

例外

metadataToken は、現在のモジュールのスコープに含まれるメソッドまたはコンストラクターのトークンではありません。

- または -

metadataToken は、要素型 var (ジェネリック型の型パラメーター) または mvar (ジェネリック メソッドの型パラメーター) を含むシグネチャを持つ MethodSpec ですが、必要なジェネリック型の引数が genericTypeArgumentsgenericMethodArguments の両方またはいずれかに提供されていません。

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

注釈

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

注意

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

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

適用対象