Type.GetPropertyImpl Método

Definição

Quando substituído em uma classe derivada, pesquisa a propriedade especificada cujos parâmetros correspondem aos tipos de argumento e modificadores especificados, usando as restrições de associação especificadas.

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

Parâmetros

name
String

A cadeia de caracteres que contém o nome da propriedade a ser obtido.

bindingAttr
BindingFlags

Uma combinação bit a bit dos valores de enumeração que especificam como a pesquisa é conduzida.

-ou-

Default para retornar null.

binder
Binder

Um objeto que define um conjunto de propriedades e habilita a associação, que pode envolver a seleção de um membro sobrecarregado, a coerção de tipos de argumento e a invocação de um membro por meio da reflexão.

-ou-

Uma referência nula (Nothing em Visual Basic) para usar o DefaultBinder.

returnType
Type

O tipo de retorno da propriedade.

types
Type[]

Uma matriz de Type objetos que representa o número, a ordem e o tipo dos parâmetros para obter a propriedade indexada.

-ou-

Uma matriz vazia do tipo Type (ou seja, Tipos[] = novo Tipo[0]) para obter uma propriedade que não é indexada.

modifiers
ParameterModifier[]

Uma matriz de ParameterModifier objetos que representa os atributos associados ao elemento correspondente na types matriz. O associador padrão não processa esse parâmetro.

Retornos

Um objeto que representa a propriedade que corresponde aos requisitos especificados, se encontrado; caso contrário, null.

Exceções

Mais de uma propriedade é encontrada com o nome especificado e correspondendo às restrições de associação especificadas.

name é null.

-ou-

types é null.

-ou-

Um dos elementos é typesnull.

types é multidimensional.

-ou-

modifiers é multidimensional.

-ou-

types e modifiers não têm o mesmo comprimento.

Comentários

Embora o associador padrão não processe ParameterModifier (o modifiers parâmetro), você pode usar a classe abstrata System.Reflection.Binder para gravar um associador personalizado que processa modifiers. ParameterModifier é usado apenas durante a chamada por meio da interoperabilidade COM e apenas os parâmetros passados por referência são manipulados.

Os seguintes BindingFlags sinalizadores de filtro podem ser usados para definir quais propriedades incluir na pesquisa:

  • Você deve especificar ou BindingFlags.Instance ou BindingFlags.Static para obter um retorno.

  • Especifique BindingFlags.Public para incluir propriedades públicas na pesquisa.

  • Especifique BindingFlags.NonPublic para incluir propriedades não públicas (ou seja, propriedades privadas, internas e protegidas) na pesquisa.

  • Especifique BindingFlags.FlattenHierarchy para incluir public e protected membros estáticos na hierarquia; private membros estáticos em classes herdadas não estã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 as propriedades declaradas no Type, não propriedades que foram simplesmente herdadas.

Consulte System.Reflection.BindingFlags para obter mais informações.

Aplica-se a

Confira também