Type.GetMethodImpl Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
GetMethodImpl(String, Int32, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) |
Quando substituído em uma classe derivada, pesquisa o método especificado, cujos parâmetros correspondem à contagem de parâmetros genéricos, aos tipos de argumento e aos modificadores especificados, usando as restrições de associação especificadas e a convenção de chamada especificada. |
GetMethodImpl(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) |
Quando substituído em uma classe derivada, pesquisa o método especificado, cujos parâmetros correspondem aos tipos de argumento e modificadores especificados, usando as restrições de associação especificadas e a convenção de chamada especificada. |
GetMethodImpl(String, Int32, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])
- Origem:
- Type.cs
- Origem:
- Type.cs
- Origem:
- Type.cs
Quando substituído em uma classe derivada, pesquisa o método especificado, cujos parâmetros correspondem à contagem de parâmetros genéricos, aos tipos de argumento e aos modificadores especificados, usando as restrições de associação especificadas e a convenção de chamada 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);
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
Parâmetros
- name
- String
A cadeia de caracteres que contém o nome do método a ser obtido.
- genericParameterCount
- Int32
O número de parâmetros de tipo genérico do método.
- bindingAttr
- BindingFlags
Uma combinação bit a bit dos valores de enumeração que especificam como a pesquisa é realizada.
- ou -
Default para retornar null
.
- binder
- Binder
Um objeto que define um conjunto de propriedades e habilita a associação, que pode envolver seleção de um método sobrecarregado, coerção de tipos de argumento e invocação de um membro por meio da reflexão.
- ou -
Uma referência nula (Nothing
no Visual Basic), para usar o DefaultBinder.
- callConvention
- CallingConventions
O objeto que especifica o conjunto de regras a ser usado em relação à ordem e ao layout dos argumentos, a como o valor retornado é passado, quais registros são usados para argumentos e qual processo limpa a pilha.
- types
- Type[]
Uma matriz de objetos Type que representam o número, a ordem e o tipo de parâmetros para o método a ser obtido.
- ou -
Uma matriz vazia do tipo Type (ou seja, Type[] types = new Type[0]) para obter um método que não aceita parâmetros.
- ou -
null
. Se types
for null
, os argumentos não serão correspondidos.
- modifiers
- ParameterModifier[]
Uma matriz de objetos ParameterModifier que representam os atributos associados ao elemento correspondente na matriz types
. O associador padrão não processa este parâmetro.
Retornos
Um objeto que representa o método que corresponde à contagem de parâmetros genéricos, aos tipos de argumento, aos modificadores, às restrições de associação e à convenção de chamada especificados, caso encontrados; caso contrário, null
.
Exceções
O método precisa ser substituído e chamado em uma classe derivada.
Aplica-se a
GetMethodImpl(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])
- Origem:
- Type.cs
- Origem:
- Type.cs
- Origem:
- Type.cs
Quando substituído em uma classe derivada, pesquisa o método especificado, cujos parâmetros correspondem aos tipos de argumento e modificadores especificados, usando as restrições de associação especificadas e a convenção de chamada 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);
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
Parâmetros
- name
- String
A cadeia de caracteres que contém o nome do método a ser obtido.
- bindingAttr
- BindingFlags
Uma combinação bit a bit dos valores de enumeração que especificam como a pesquisa é realizada.
- ou -
Default para retornar null
.
- binder
- Binder
Um objeto que define um conjunto de propriedades e habilita a associação, que pode envolver seleção de um método sobrecarregado, coerção de tipos de argumento e invocação de um membro por meio da reflexão.
- ou -
Uma referência nula (Nothing
no Visual Basic), para usar o DefaultBinder.
- callConvention
- CallingConventions
O objeto que especifica o conjunto de regras a ser usado em relação à ordem e ao layout dos argumentos, a como o valor retornado é passado, quais registros são usados para argumentos e qual processo limpa a pilha.
- types
- Type[]
Uma matriz de objetos Type que representam o número, a ordem e o tipo de parâmetros para o método a ser obtido.
- ou -
Uma matriz vazia do tipo Type (ou seja, Type[] types = new Type[0]) para obter um método que não aceita parâmetros.
- ou -
null
. Se types
for null
, os argumentos não serão correspondidos.
- modifiers
- ParameterModifier[]
Uma matriz de objetos ParameterModifier que representam os atributos associados ao elemento correspondente na matriz types
. O associador padrão não processa este parâmetro.
Retornos
Um objeto que representa o método que corresponde aos requisitos especificados, se encontrado; do contrário, null
.
Exceções
Mais de um método é encontrado com o nome especificado e correspondendo às restrições de associação especificadas.
name
é null
.
types
é multidimensional.
- ou -
modifiers
é multidimensional.
- ou -
types
e modifiers
não têm o mesmo tamanho.
O tipo atual é um TypeBuilder ou GenericTypeParameterBuilder.
Comentários
Embora o associador padrão não processe ParameterModifier (o parâmetro modifiers
), é possível usar a classe abstrata System.Reflection.Binder para gravar um associador personalizado que processa modifiers
.
ParameterModifier
é usado somente ao chamar por meio da interoperabilidade COM e somente os parâmetros passados por referência são tratados.
Se types
for null
, os argumentos não serão correspondidos.
Os seguintes sinalizadores de filtro BindingFlags podem ser usados para definir quais métodos devem ser incluídos na pesquisa:
Você deve especificar
BindingFlags.Instance
ouBindingFlags.Static
para obter um retorno.Especifique
BindingFlags.Public
para incluir métodos públicos na pesquisa.Especifique
BindingFlags.NonPublic
para incluir métodos não públicos (ou seja, métodos privados, internos e protegidos) na pesquisa.Especifique
BindingFlags.FlattenHierarchy
para incluir os membros estáticospublic
eprotected
acima na hierarquia; os membros estáticosprivate
em classes herdadas não são incluídos.
Os seguintes sinalizadores de modificador BindingFlags podem ser usados para alterar como a pesquisa funciona:
BindingFlags.IgnoreCase
para ignorar o caso dename
.BindingFlags.DeclaredOnly
para pesquisar apenas os métodos declarados no Type, não os métodos que foram simplesmente herdados.
Consulte System.Reflection.BindingFlags para obter mais informações.
Confira também
- MethodInfo
- String
- BindingFlags
- Binder
- DefaultBinder
- CallingConventions
- ParameterModifier
- GetMethod(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])
- GetMethods()