Type.GetMethodImpl Método

Definição

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.

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 ou BindingFlags.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áticos public e protected acima na hierarquia; os membros estáticos private 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 de name.

  • 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

Aplica-se a