Type.GetPropertyImpl 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.
Quando substituído em uma classe derivada, pesquisa a propriedade especificada cujos parâmetros correspondem aos modificadores e tipos de argumento 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);
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 obtida.
- 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 membro 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.
- returnType
- Type
O tipo de retorno da propriedade.
- types
- Type[]
Uma matriz de objetos Type que representam o número, a ordem e o tipo de parâmetros para a propriedade indexada a ser obtida.
- ou -
Uma matriz vazia do tipo Type (ou seja, tipos Type[] = novo Type[0]) para obter uma propriedade que não seja indexada.
- 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 a propriedade que corresponde aos requisitos especificados, se for encontrado; caso contrário, null
.
Exceções
É encontrada mais de uma propriedade com o nome especificado e que corresponde às restrições de associação especificadas.
types
é multidimensional.
- ou -
modifiers
é multidimensional.
- ou -
types
e modifiers
não têm o mesmo tamanho.
O tipo atual é um TypeBuilder, EnumBuilder 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
só é usado ao chamar por meio da interoperabilidade COM, e somente os parâmetros passados por referência são tratados.
Os seguintes BindingFlags sinalizadores de filtro podem ser usados para definir quais propriedades incluir na pesquisa:
Você deve especificar
BindingFlags.Instance
ouBindingFlags.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 particulares, internas e protegidas) 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 as propriedades declaradas no Type, e não as propriedades que foram simplesmente herdadas.
Consulte System.Reflection.BindingFlags para obter mais informações.