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
- 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
- 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.InstanceouBindingFlags.Staticpara obter um retorno.Especifique
BindingFlags.Publicpara incluir métodos públicos na pesquisa.Especifique
BindingFlags.NonPublicpara incluir métodos não públicos (ou seja, métodos privados, internos e protegidos) na pesquisa.Especifique
BindingFlags.FlattenHierarchypara incluir os membros estáticospubliceprotectedacima na hierarquia; os membros estáticosprivateem classes herdadas não são incluídos.
Os seguintes sinalizadores de modificador BindingFlags podem ser usados para alterar como a pesquisa funciona:
BindingFlags.IgnoreCasepara ignorar o caso dename.BindingFlags.DeclaredOnlypara 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()