Type.GetConstructorImpl Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Wanneer deze wordt overschreven in een afgeleide klasse, zoekt u naar een constructor waarvan de parameters overeenkomen met de opgegeven argumenttypen en modifiers, met behulp van de opgegeven bindingsbeperkingen en de opgegeven aanroepconventie.
protected:
abstract System::Reflection::ConstructorInfo ^ GetConstructorImpl(System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, System::Reflection::CallingConventions callConvention, cli::array <Type ^> ^ types, cli::array <System::Reflection::ParameterModifier> ^ modifiers);
[System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicConstructors | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicConstructors)]
protected abstract System.Reflection.ConstructorInfo? GetConstructorImpl(System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, System.Reflection.CallingConventions callConvention, Type[] types, System.Reflection.ParameterModifier[]? modifiers);
protected abstract System.Reflection.ConstructorInfo GetConstructorImpl(System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, System.Reflection.CallingConventions callConvention, Type[] types, System.Reflection.ParameterModifier[] modifiers);
protected abstract System.Reflection.ConstructorInfo? GetConstructorImpl(System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, System.Reflection.CallingConventions callConvention, Type[] types, System.Reflection.ParameterModifier[]? modifiers);
[<System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicConstructors | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicConstructors)>]
abstract member GetConstructorImpl : System.Reflection.BindingFlags * System.Reflection.Binder * System.Reflection.CallingConventions * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.ConstructorInfo
abstract member GetConstructorImpl : System.Reflection.BindingFlags * System.Reflection.Binder * System.Reflection.CallingConventions * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.ConstructorInfo
Protected MustOverride Function GetConstructorImpl (bindingAttr As BindingFlags, binder As Binder, callConvention As CallingConventions, types As Type(), modifiers As ParameterModifier()) As ConstructorInfo
Parameters
- bindingAttr
- BindingFlags
Een bitsgewijze combinatie van de opsommingswaarden die aangeven hoe de zoekopdracht wordt uitgevoerd.
– of –
Default om terug te keren null.
- binder
- Binder
Een object dat een set eigenschappen definieert en binding mogelijk maakt, waarbij een overbelaste methode, dwang van argumenttypen en het aanroepen van een lid via weerspiegeling kan worden geselecteerd.
– of –
Een null-verwijzing (Nothing in Visual Basic) om de DefaultBinder te gebruiken.
- callConvention
- CallingConventions
Het object dat de set regels specificeert die moeten worden gebruikt met betrekking tot de volgorde en indeling van argumenten, hoe de retourwaarde wordt doorgegeven, welke registers worden gebruikt voor argumenten en de stack wordt opgeschoond.
- types
- Type[]
Een matrix met Type objecten die het getal, de volgorde en het type van de parameters vertegenwoordigen die de constructor moet ophalen.
– of –
Een lege matrix van het type Type (dat wil gezegd, Type[] types = new Type[0]) om een constructor op te halen die geen parameters gebruikt.
- modifiers
- ParameterModifier[]
Een matrix met ParameterModifier objecten die de kenmerken vertegenwoordigen die zijn gekoppeld aan het bijbehorende element in de types matrix. Deze parameter wordt niet verwerkt door de standaard binder.
Retouren
Een ConstructorInfo object dat de constructor vertegenwoordigt die overeenkomt met de opgegeven vereisten, indien gevonden; nullanders.
- Kenmerken
Uitzonderingen
types is multidimensionaal.
– of –
modifiers is multidimensionaal.
– of –
types en modifiers niet dezelfde lengte hebben.
Het huidige type is een TypeBuilder of GenericTypeParameterBuilder.
Opmerkingen
Hoewel de standaardbinder ParameterModifier (het modifiers-argument) niet verwerkt, kunt u de abstracte klasse System.Reflection.Binder gebruiken om een aangepaste binder te schrijven die modifiers wel verwerkt.
ParameterModifier wordt alleen gebruikt bij het aanroepen via COM-interop en alleen parameters die worden doorgegeven door verwijzing, worden verwerkt.
Als er geen exacte overeenkomst bestaat, probeert de binder parametertypen die in de types matrix zijn opgegeven, te dwingen om een overeenkomst te selecteren. Als de binder overeenkomst niet kan worden geselecteerd, null wordt deze geretourneerd.
De volgende BindingFlags filtervlagmen kunnen worden gebruikt om te definiëren welke constructors moeten worden opgenomen in de zoekopdracht:
U moet of
BindingFlags.InstanceofBindingFlags.Staticopgeven om een retour te krijgen.Geef
BindingFlags.Publicop dat openbare constructors moeten worden opgenomen in de zoekopdracht.Geef op
BindingFlags.NonPublicdat er niet-openbare constructors (dat wil gezegd privé-, interne en beveiligde constructors) moeten worden opgenomen in de zoekopdracht.
Zie System.Reflection.BindingFlags voor meer informatie.
Met deze methode wordt geïmplementeerd GetConstructor.