Type.GetPropertyImpl Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Při přepsání v odvozené třídě vyhledá zadanou vlastnost, jejíž parametry odpovídají zadaným typům argumentů a modifikátorům, pomocí zadaných omezení vazby.
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);
[System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicProperties | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicProperties)]
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);
protected abstract System.Reflection.PropertyInfo? GetPropertyImpl(string name, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, Type? returnType, Type[]? types, System.Reflection.ParameterModifier[]? modifiers);
[<System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicProperties | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicProperties)>]
abstract member GetPropertyImpl : string * System.Reflection.BindingFlags * System.Reflection.Binder * Type * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.PropertyInfo
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
Řetězec obsahující název vlastnosti, která se má získat.
- bindingAttr
- BindingFlags
Bitové kombinace hodnot výčtu, které určují způsob provedení hledání.
nebo
Default
nullvrátit .
- binder
- Binder
Objekt, který definuje sadu vlastností a umožňuje vazbu, která může zahrnovat výběr přetíženého členu, převod typů argumentů a vyvolání člena prostřednictvím reflexe.
nebo
Odkaz null (Nothing v Visual Basic) pro použití DefaultBinder.
- returnType
- Type
Návratový typ vlastnosti.
- types
- Type[]
Pole objektů představujících Type číslo, pořadí a typ parametrů indexované vlastnosti získat.
nebo
Prázdné pole typu Type (to znamená Type[] types = new Type[0]) pro získání vlastnosti, která není indexována.
- modifiers
- ParameterModifier[]
Pole ParameterModifier objektů představující atributy přidružené k odpovídajícímu prvku v types poli. Výchozí pořadač tento parametr nezpracuje.
Návraty
Objekt představující vlastnost, která odpovídá zadaným požadavkům, pokud byl nalezen; v opačném případě . null
- Atributy
Výjimky
Nachází se více než jedna vlastnost se zadaným názvem a odpovídá zadaným omezením vazby.
types je multidimenzionální.
nebo
modifiers je multidimenzionální.
nebo
types a modifiers nemají stejnou délku.
Aktuální typ je , TypeBuilderEnumBuildernebo GenericTypeParameterBuilder.
Poznámky
I když výchozí pořadač nezpracovává ParameterModifier ( modifiers parametr), můžete použít abstraktní System.Reflection.Binder třídu k zápisu vlastního pořadače, který zpracovává modifiers.
ParameterModifier se používá pouze při volání přes COM interop a jsou zpracovávány pouze parametry předané odkazem.
BindingFlags Následující příznaky filtru lze použít k definování vlastností, které se mají zahrnout do hledání:
Abyste získali vrácení, je nutné zadat buď
BindingFlags.InstanceneboBindingFlags.Static.Zadejte
BindingFlags.Public, aby se do hledání zahrnuly veřejné vlastnosti.Zadejte
BindingFlags.NonPublic, aby se do hledání zahrnuly neveřejné vlastnosti (tj. soukromé, interní a chráněné vlastnosti).Určete
BindingFlags.FlattenHierarchy, aby se zahrnulypublicaprotectedstatické členy v hierarchii; aleprivatestatické členy v zděděných třídách nejsou zahrnuty.
Ke změně fungování vyhledávání můžete použít následující BindingFlags modifikační příznaky:
BindingFlags.IgnoreCaseignorovat případname.BindingFlags.DeclaredOnlyhledat pouze vlastnosti deklarované v objektu Type, nikoli vlastnosti, které byly jednoduše zděděny.
Další informace naleznete na System.Reflection.BindingFlags.