Type.GetMethodImpl Metodo

Definizione

Overload

GetMethodImpl(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Quando ne viene eseguito l'override in una classe derivata, cerca il metodo specificato i cui parametri corrispondono ai modificatori e ai tipi di argomento definiti, usando i vincoli di binding e la convenzione di chiamata specificati.When overridden in a derived class, searches for the specified method whose parameters match the specified argument types and modifiers, using the specified binding constraints and the specified calling convention.

GetMethodImpl(String, Int32, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Se sottoposto a override in una classe derivata, cerca il metodo specificato i cui parametri corrispondono al numero di parametri generici, ai tipi di argomenti e ai modificatori specificati, usando i vincoli di binding e la convenzione di chiamata specificati.When overridden in a derived class, searches for the specified method whose parameters match the specified generic parameter count, argument types and modifiers, using the specified binding constraints and the specified calling convention.

GetMethodImpl(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Quando ne viene eseguito l'override in una classe derivata, cerca il metodo specificato i cui parametri corrispondono ai modificatori e ai tipi di argomento definiti, usando i vincoli di binding e la convenzione di chiamata specificati.When overridden in a derived class, searches for the specified method whose parameters match the specified argument types and modifiers, using the specified binding constraints and the specified calling convention.

protected:
 abstract System::Reflection::MethodInfo ^ GetMethodImpl(System::String ^ name, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, System::Reflection::CallingConventions callConvention, cli::array <Type ^> ^ types, cli::array <System::Reflection::ParameterModifier> ^ modifiers);
protected abstract System.Reflection.MethodInfo? GetMethodImpl (string name, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, System.Reflection.CallingConventions callConvention, Type[]? types, System.Reflection.ParameterModifier[]? modifiers);
protected abstract System.Reflection.MethodInfo GetMethodImpl (string name, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, System.Reflection.CallingConventions callConvention, Type[] types, System.Reflection.ParameterModifier[] modifiers);
abstract member GetMethodImpl : string * System.Reflection.BindingFlags * System.Reflection.Binder * System.Reflection.CallingConventions * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.MethodInfo
Protected MustOverride Function GetMethodImpl (name As String, bindingAttr As BindingFlags, binder As Binder, callConvention As CallingConventions, types As Type(), modifiers As ParameterModifier()) As MethodInfo

Parametri

name
String

Stringa che contiene il nome del metodo da ottenere.The string containing the name of the method to get.

bindingAttr
BindingFlags

Combinazione bit per bit di valori di enumerazione che specifica il modo in cui viene eseguita la ricerca.A bitwise combination of the enumeration values that specify how the search is conducted.

-oppure--or- Default per restituire null.Default to return null.

binder
Binder

Oggetto che definisce una serie di proprietà e permette il binding, che può implicare la scelta di un metodo di overload, la coercizione di tipi di argomento e la chiamata di un membro mediante reflection.An object that defines a set of properties and enables binding, which can involve selection of an overloaded method, coercion of argument types, and invocation of a member through reflection.

-oppure--or- Riferimento Null (Nothing in Visual Basic) per l'uso di DefaultBinder.A null reference (Nothing in Visual Basic), to use the DefaultBinder.

callConvention
CallingConventions

Oggetto che specifica il set di regole da usare per l'ordine e il layout degli argomenti, la modalità di passaggio del valore restituito, i registri usati per gli argomenti e il processo di pulizia dello stack.The object that specifies the set of rules to use regarding the order and layout of arguments, how the return value is passed, what registers are used for arguments, and what process cleans up the stack.

types
Type[]

Matrice di oggetti Type che rappresentano numero, ordine e tipo dei parametri relativi al metodo da ottenere.An array of Type objects representing the number, order, and type of the parameters for the method to get.

-oppure--or- Matrice vuota di tipo Type (ovvero, Type[] types = new Type[0]) per ottenere un metodo che non accetta parametri.An empty array of the type Type (that is, Type[] types = new Type[0]) to get a method that takes no parameters.

-oppure--or- null.null. Se types è null, gli argomenti non corrispondono.If types is null, arguments are not matched.

modifiers
ParameterModifier[]

Matrice di oggetti ParameterModifier che rappresentano gli attributi associati all'elemento corrispondente nella matrice types.An array of ParameterModifier objects representing the attributes associated with the corresponding element in the types array. Questo parametro non viene elaborato dal binder predefinito.The default binder does not process this parameter.

Restituisce

MethodInfo

Oggetto che rappresenta il metodo corrispondente ai requisiti specificati, se presente; in caso contrario, null.An object representing the method that matches the specified requirements, if found; otherwise, null.

Eccezioni

È stato trovato più di un metodo con il nome specificato e corrispondente ai vincoli di associazione specificati.More than one method is found with the specified name and matching the specified binding constraints.

name è null.name is null.

types è multidimensionale.types is multidimensional.

-oppure--or- modifiers è multidimensionale.modifiers is multidimensional.

-oppure--or- types e modifiers non hanno la stessa lunghezza.types and modifiers do not have the same length.

Commenti

Sebbene il binder predefinito non elabori ParameterModifier (il modifiers parametro), è possibile usare la classe astratta System.Reflection.Binder per scrivere un gestore di associazione personalizzato che esegue l'elaborazione modifiers .Although the default binder does not process ParameterModifier (the modifiers parameter), you can use the abstract System.Reflection.Binder class to write a custom binder that does process modifiers. ParameterModifier viene utilizzato solo quando si effettua una chiamata tramite l'interoperabilità COM e vengono gestiti solo i parametri passati per riferimento.ParameterModifier is only used when calling through COM interop, and only parameters that are passed by reference are handled.

Se types è null, gli argomenti non corrispondono.If types is null, arguments are not matched.

I BindingFlags flag di filtro seguenti possono essere usati per definire i metodi da includere nella ricerca:The following BindingFlags filter flags can be used to define which methods to include in the search:

  • È necessario specificare BindingFlags.Instance o per BindingFlags.Static ottenere un valore restituito.You must specify either BindingFlags.Instance or BindingFlags.Static in order to get a return.

  • Specificare BindingFlags.Public per includere i metodi pubblici nella ricerca.Specify BindingFlags.Public to include public methods in the search.

  • Specificare BindingFlags.NonPublic per includere metodi non pubblici (ovvero metodi privati, interni e protetti) nella ricerca.Specify BindingFlags.NonPublic to include non-public methods (that is, private, internal, and protected methods) in the search.

  • BindingFlags.FlattenHierarchyConsente di specificare di includere public e protected membri statici nella gerarchia private . i membri statici nelle classi ereditate non sono inclusi.Specify BindingFlags.FlattenHierarchy to include public and protected static members up the hierarchy; private static members in inherited classes are not included.

I BindingFlags flag di modifica seguenti possono essere utilizzati per modificare il funzionamento della ricerca:The following BindingFlags modifier flags can be used to change how the search works:

  • BindingFlags.IgnoreCase per ignorare la distinzione tra maiuscole e minuscole name .BindingFlags.IgnoreCase to ignore the case of name.

  • BindingFlags.DeclaredOnly per eseguire la ricerca solo nei metodi dichiarati in Type , non nei metodi semplicemente ereditati.BindingFlags.DeclaredOnly to search only the methods declared on the Type, not methods that were simply inherited.

Per altre informazioni, vedere System.Reflection.BindingFlags.See System.Reflection.BindingFlags for more information.

Vedi anche

Si applica a

GetMethodImpl(String, Int32, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Se sottoposto a override in una classe derivata, cerca il metodo specificato i cui parametri corrispondono al numero di parametri generici, ai tipi di argomenti e ai modificatori specificati, usando i vincoli di binding e la convenzione di chiamata specificati.When overridden in a derived class, searches for the specified method whose parameters match the specified generic parameter count, argument types and modifiers, using the specified binding constraints and the specified calling convention.

protected:
 virtual System::Reflection::MethodInfo ^ GetMethodImpl(System::String ^ name, int genericParameterCount, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, System::Reflection::CallingConventions callConvention, cli::array <Type ^> ^ types, cli::array <System::Reflection::ParameterModifier> ^ modifiers);
protected virtual System.Reflection.MethodInfo? GetMethodImpl (string name, int genericParameterCount, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, System.Reflection.CallingConventions callConvention, Type[]? types, System.Reflection.ParameterModifier[]? modifiers);
protected virtual System.Reflection.MethodInfo GetMethodImpl (string name, int genericParameterCount, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, System.Reflection.CallingConventions callConvention, Type[] types, System.Reflection.ParameterModifier[] modifiers);
abstract member GetMethodImpl : string * int * System.Reflection.BindingFlags * System.Reflection.Binder * System.Reflection.CallingConventions * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.MethodInfo
override this.GetMethodImpl : string * int * System.Reflection.BindingFlags * System.Reflection.Binder * System.Reflection.CallingConventions * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.MethodInfo
Protected Overridable Function GetMethodImpl (name As String, genericParameterCount As Integer, bindingAttr As BindingFlags, binder As Binder, callConvention As CallingConventions, types As Type(), modifiers As ParameterModifier()) As MethodInfo

Parametri

name
String

Stringa che contiene il nome del metodo da ottenere.The string containing the name of the method to get.

genericParameterCount
Int32

Numero di parametri di tipo generico del metodo.The number of generic type parameters of the method.

bindingAttr
BindingFlags

Combinazione bit per bit di valori di enumerazione che specifica il modo in cui viene eseguita la ricerca.A bitwise combination of the enumeration values that specify how the search is conducted.

-oppure--or-

Default per restituire null.Default to return null.

binder
Binder

Oggetto che definisce una serie di proprietà e permette il binding, che può implicare la scelta di un metodo di overload, la coercizione di tipi di argomento e la chiamata di un membro mediante reflection.An object that defines a set of properties and enables binding, which can involve selection of an overloaded method, coercion of argument types, and invocation of a member through reflection.

-oppure--or-

Riferimento Null (Nothing in Visual Basic) per l'uso di DefaultBinder.A null reference (Nothing in Visual Basic), to use the DefaultBinder.

callConvention
CallingConventions

Oggetto che specifica il set di regole da usare per l'ordine e il layout degli argomenti, la modalità di passaggio del valore restituito, i registri usati per gli argomenti e il processo di pulizia dello stack.The object that specifies the set of rules to use regarding the order and layout of arguments, how the return value is passed, what registers are used for arguments, and what process cleans up the stack.

types
Type[]

Matrice di oggetti Type che rappresentano numero, ordine e tipo dei parametri relativi al metodo da ottenere.An array of Type objects representing the number, order, and type of the parameters for the method to get.

-oppure--or-

Matrice vuota di tipo Type (ovvero, Type[] types = new Type[0]) per ottenere un metodo che non accetta parametri.An empty array of the type Type (that is, Type[] types = new Type[0]) to get a method that takes no parameters.

-oppure--or-

null.null. Se types è null, gli argomenti non corrispondono.If types is null, arguments are not matched.

modifiers
ParameterModifier[]

Matrice di oggetti ParameterModifier che rappresentano gli attributi associati all'elemento corrispondente nella matrice types.An array of ParameterModifier objects representing the attributes associated with the corresponding element in the types array. Questo parametro non viene elaborato dal binder predefinito.The default binder does not process this parameter.

Restituisce

MethodInfo

Oggetto che rappresenta il metodo corrispondente al numero di parametri generici, ai tipi di argomento, ai modificatori, ai vincoli di binding e alla convenzione di chiamata specificati, se viene trovato. In caso contrario, null.An object representing the method that matches the specified generic parameter count, argument types, modifiers, binding constraints and calling convention, if found; otherwise, null.

Eccezioni

È necessario eseguire l'override del metodo, che deve essere chiamato in una classe derivata.The method needs to be overriden and called in a derived class.

Si applica a