ModuleBuilder.ResolveMethod(Int32, Type[], Type[]) Metoda

Definice

Vrátí metodu nebo konstruktor identifikovaný zadaným tokenem metadat v kontextu definovaném zadanými parametry obecného typu.

public:
 override System::Reflection::MethodBase ^ ResolveMethod(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Trimming changes metadata tokens")]
public override System.Reflection.MethodBase? ResolveMethod(int metadataToken, Type[]? genericTypeArguments, 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);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Trimming changes metadata tokens")>]
override this.ResolveMethod : int * Type[] * Type[] -> System.Reflection.MethodBase
override this.ResolveMethod : int * Type[] * Type[] -> System.Reflection.MethodBase
Public Overrides Function ResolveMethod (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As MethodBase

Parametry

metadataToken
Int32

Token metadat, který identifikuje metodu nebo konstruktor v modulu.

genericTypeArguments
Type[]

Pole Type objektů představujících argumenty obecného typu typu, ve kterém je token v oboru, nebo null pokud tento typ není obecný.

genericMethodArguments
Type[]

Pole Type objektů představujících argumenty obecného typu metody, kde je token v oboru, nebo null pokud tato metoda není obecná.

Návraty

Objekt MethodBase představující metodu, která je identifikována zadaným tokenem metadat.

Atributy

Výjimky

metadataToken není token pro metodu nebo konstruktor v oboru aktuálního modulu.

nebo

metadataToken MethodSpec je jehož podpis obsahuje typ var prvku (typ parametru obecného typu) nebo mvar (typ parametru obecné metody) a nezbytné argumenty obecného typu nebyly zadány pro ani oba .genericTypeArgumentsgenericMethodArguments

metadataToken není platný token v oboru aktuálního modulu.

Poznámky

Použijte metodu Type.GetGenericArguments pro typ, kde metadataToken je v oboru získat pole argumentů obecného typu pro genericTypeArguments. Použijte metodu MethodInfo.GetGenericArguments pro metodu, kde metadataToken je v oboru získat pole argumentů obecného typu pro genericMethodArguments. Vždy je bezpečné zadat tyto argumenty, i když nejsou potřeba.

Note

Informace o tokenech metadat najdete v dokumentaci k common language infrastructure (CLI), zejména v části II: Definice metadat a sémantika. Další informace najdete v tématu ECMA 335 Common Language Infrastructure (CLI).

Kód, který demonstruje překlad tokenu pomocí obecného kontextu (tj. parametry obecného typu obecného typu nebo obecné metody, ve které je token vložen) se podívejte na metodu Module.ResolveMethod(Int32, Type[], Type[]) .

Platí pro