Type.GetMethodImpl Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
| Nombre | Description |
|---|---|
| GetMethodImpl(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) |
Cuando se reemplaza en una clase derivada, busca el método especificado cuyos parámetros coinciden con los tipos y modificadores de argumento especificados, utilizando las restricciones de enlace especificadas y la convención de llamada especificada. |
| GetMethodImpl(String, Int32, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) |
Cuando se reemplaza en una clase derivada, busca el método especificado cuyos parámetros coinciden con el recuento de parámetros genéricos, los tipos de argumento y los modificadores especificados, utilizando las restricciones de enlace especificadas y la convención de llamada especificada. |
GetMethodImpl(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])
- Source:
- Type.cs
- Source:
- Type.cs
- Source:
- Type.cs
- Source:
- Type.cs
- Source:
- Type.cs
Cuando se reemplaza en una clase derivada, busca el método especificado cuyos parámetros coinciden con los tipos y modificadores de argumento especificados, utilizando las restricciones de enlace especificadas y la convención de llamada especificada.
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);
[System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicMethods | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicMethods)]
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);
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);
[<System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicMethods | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicMethods)>]
abstract member GetMethodImpl : string * System.Reflection.BindingFlags * System.Reflection.Binder * System.Reflection.CallingConventions * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.MethodInfo
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
Parámetros
- name
- String
Cadena que contiene el nombre del método que se va a obtener.
- bindingAttr
- BindingFlags
Combinación bit a bit de los valores de enumeración que especifican cómo se realiza la búsqueda.
O bien
Default para devolver null.
- binder
- Binder
Objeto que define un conjunto de propiedades y habilita el enlace, que puede implicar la selección de un método sobrecargado, la coerción de tipos de argumentos y la invocación de un miembro a través de la reflexión.
O bien
Referencia nula (Nothing en Visual Basic), para usar el DefaultBinder.
- callConvention
- CallingConventions
Objeto que especifica el conjunto de reglas que se van a usar con respecto al orden y diseño de los argumentos, cómo se pasa el valor devuelto, qué registros se usan para los argumentos y qué proceso limpia la pila.
- types
- Type[]
Matriz de Type objetos que representan el número, el orden y el tipo de los parámetros para el método que se va a obtener.
O bien
Matriz vacía del tipo Type (es decir, Type[] types = new Type[0]) para obtener un método que no toma parámetros.
O bien
null. Si types es null, los argumentos no coinciden.
- modifiers
- ParameterModifier[]
Matriz de ParameterModifier objetos que representan los atributos asociados al elemento correspondiente de la types matriz. El enlazador predeterminado no procesa este parámetro.
Devoluciones
Objeto que representa el método que coincide con los requisitos especificados, si se encuentra; de lo contrario, null.
- Atributos
Excepciones
Se encuentra más de un método con el nombre especificado y coincide con las restricciones de enlace especificadas.
name es null.
types es multidimensional.
O bien
modifiers es multidimensional.
O bien
types y modifiers no tienen la misma longitud.
El tipo actual es o TypeBuilderGenericTypeParameterBuilder.
Comentarios
Aunque el enlazador predeterminado no procesa ParameterModifier (el modifiers parámetro ), puede usar la clase abstracta System.Reflection.Binder para escribir un enlazador personalizado que procesa modifiers.
ParameterModifier solo se usa cuando se llama mediante la interoperabilidad COM y solo se controlan parámetros que se pasan por referencia.
Si types es null, los argumentos no coinciden.
Las marcas de filtro siguientes BindingFlags se pueden usar para definir qué métodos se van a incluir en la búsqueda:
Debe especificar ya sea
BindingFlags.InstanceoBindingFlags.Staticpara obtener una devolución.Especifique
BindingFlags.Publicpara incluir métodos públicos en la búsqueda.Especifique
BindingFlags.NonPublicpara incluir métodos no públicos (es decir, métodos privados, internos y protegidos) en la búsqueda.Especifique
BindingFlags.FlattenHierarchypara incluirpublicyprotectedlos miembros estáticos en la jerarquía;privateno se incluyen los miembros estáticos de las clases heredadas.
Se pueden usar las marcas modificadores siguientes BindingFlags para cambiar el funcionamiento de la búsqueda:
BindingFlags.IgnoreCasepara pasar por alto el caso dename.BindingFlags.DeclaredOnlypara buscar solo los métodos declarados en Type, no los métodos que simplemente se heredaron.
Consulte System.Reflection.BindingFlags para obtener más información.
Consulte también
- MethodInfo
- String
- BindingFlags
- Binder
- DefaultBinder
- CallingConventions
- ParameterModifier
- GetMethod(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])
- GetMethods()
Se aplica a
GetMethodImpl(String, Int32, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])
- Source:
- Type.cs
- Source:
- Type.cs
- Source:
- Type.cs
- Source:
- Type.cs
- Source:
- Type.cs
Cuando se reemplaza en una clase derivada, busca el método especificado cuyos parámetros coinciden con el recuento de parámetros genéricos, los tipos de argumento y los modificadores especificados, utilizando las restricciones de enlace especificadas y la convención de llamada especificada.
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);
[System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicMethods | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicMethods)]
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);
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);
[<System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicMethods | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicMethods)>]
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
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
Parámetros
- name
- String
Cadena que contiene el nombre del método que se va a obtener.
- genericParameterCount
- Int32
Número de parámetros de tipo genérico del método.
- bindingAttr
- BindingFlags
Combinación bit a bit de los valores de enumeración que especifican cómo se realiza la búsqueda.
O bien
Default para devolver null.
- binder
- Binder
Objeto que define un conjunto de propiedades y habilita el enlace, que puede implicar la selección de un método sobrecargado, la coerción de tipos de argumentos y la invocación de un miembro a través de la reflexión.
O bien
Referencia nula (Nothing en Visual Basic), para usar el DefaultBinder.
- callConvention
- CallingConventions
Objeto que especifica el conjunto de reglas que se van a usar con respecto al orden y diseño de los argumentos, cómo se pasa el valor devuelto, qué registros se usan para los argumentos y qué proceso limpia la pila.
- types
- Type[]
Matriz de Type objetos que representan el número, el orden y el tipo de los parámetros para el método que se va a obtener.
O bien
Matriz vacía del tipo Type (es decir, Type[] types = new Type[0]) para obtener un método que no toma parámetros.
O bien
null. Si types es null, los argumentos no coinciden.
- modifiers
- ParameterModifier[]
Matriz de ParameterModifier objetos que representan los atributos asociados al elemento correspondiente de la types matriz. El enlazador predeterminado no procesa este parámetro.
Devoluciones
Objeto que representa el método que coincide con el recuento de parámetros genéricos, tipos de argumentos, modificadores, restricciones de enlace y convención de llamada, si se encuentra; de lo contrario, null.
- Atributos
Excepciones
El método debe invalidarse y llamarse en una clase derivada.