Type.GetPropertyImpl Metoda

Definicja

W przypadku przesłonięć w klasie pochodnej program wyszukuje określoną właściwość, której parametry pasują do określonych typów argumentów i modyfikatorów, przy użyciu określonych ograniczeń powiązania.

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

Parametry

name
String

Ciąg zawierający nazwę właściwości do uzyskania.

bindingAttr
BindingFlags

Bitowa kombinacja wartości wyliczenia, które określają sposób przeprowadzania wyszukiwania.

-lub- Default , aby zwrócić null .

binder
Binder

Obiekt, który definiuje zestaw właściwości i umożliwia powiązanie, które może obejmować wybór przeciążenia członka, wywłaszczanie typów argumentów i wywołania członka przez odbicie.

-lub- Odwołanie o wartości null ( Nothing w Visual Basic), aby użyć DefaultBinder .

returnType
Type

Zwracany typ właściwości.

types
Type[]

Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla właściwości Type indeksowanej do uzyskania.

-lub- Pusta tablica typu Type (typ [] typy = nowy typ[0]) w celu uzyskania właściwości, która nie jest indeksowana.

modifiers
ParameterModifier[]

Tablica ParameterModifier obiektów reprezentujących atrybuty skojarzone z odpowiednim elementem w types tablicy. Domyślny konsolidator nie przetwarza tego parametru.

Zwraca

PropertyInfo

Obiekt reprezentujący właściwość, która spełnia określone wymagania, jeśli zostanie znaleziona; w przeciwnym razie null .

Wyjątki

Znaleziono więcej niż jedną właściwość o określonej nazwie i pasującą do określonych ograniczeń powiązania.

name to null.

-lub- types to null.

-lub- Jednym z elementów w programie types jest null .

Parametr types jest wielowymiarowy.

-lub- Parametr modifiers jest wielowymiarowy.

-lub- types i modifiers nie mają tej samej długości.

Uwagi

Mimo że domyślny binder nie przetwarza (parametru ), można użyć klasy abstrakcyjnej do napisania niestandardowego ParameterModifier modifiers klasy System.Reflection.Binder binder, który przetwarza klasę modifiers . ParameterModifier Jest używany tylko podczas wywoływania za pośrednictwem międzyplatopii COM i obsługiwane są tylko parametry, które są przekazywane przez odwołanie.

Następujące BindingFlags flagi filtru mogą służyć do definiowania właściwości do dołączyć do wyszukiwania:

  • Aby uzyskać zwrot, należy określić wartość lub BindingFlags.Instance BindingFlags.Static .

  • Określ, BindingFlags.Public aby uwzględnić właściwości publiczne w wyszukiwaniu.

  • Określ, BindingFlags.NonPublic aby uwzględnić właściwości niepublicznie (prywatne, wewnętrzne i chronione) w wyszukiwaniu.

  • Określ BindingFlags.FlattenHierarchy dołączanie public i statyczne elementy członkowskie w hierarchii; statyczne protected private składowe w klasach dziedziczonych nie są uwzględniane.

Następujące BindingFlags flagi modyfikujące mogą służyć do zmiany sposobu działania wyszukiwania:

  • BindingFlags.IgnoreCase , aby zignorować przypadek name .

  • BindingFlags.DeclaredOnly wyszukiwanie tylko właściwości zadeklarowanych w Type , a nie właściwości, które były po prostu dziedziczone.

Aby uzyskać więcej informacji, zobacz System.Reflection.BindingFlags.

Dotyczy

Zobacz też