ConstructorInfo.Invoke Méthode

Définition

Appelle le constructeur réfléchi par cette instance.Invokes the constructor reflected by this instance.

Surcharges

Invoke(Object[])

Appelle le constructeur réfléchi par l’instance qui dispose des paramètres spécifiés, en fournissant des valeurs par défaut pour les paramètres rarement utilisés.Invokes the constructor reflected by the instance that has the specified parameters, providing default values for the parameters not commonly used.

Invoke(BindingFlags, Binder, Object[], CultureInfo)

En cas d'implémentation dans une classe dérivée, appelle le constructeur réfléchi par ce ConstructorInfo, avec les arguments spécifiés, sous les contraintes du Binder spécifié.When implemented in a derived class, invokes the constructor reflected by this ConstructorInfo with the specified arguments, under the constraints of the specified Binder.

Invoke(Object[])

Appelle le constructeur réfléchi par l’instance qui dispose des paramètres spécifiés, en fournissant des valeurs par défaut pour les paramètres rarement utilisés.Invokes the constructor reflected by the instance that has the specified parameters, providing default values for the parameters not commonly used.

public:
 System::Object ^ Invoke(cli::array <System::Object ^> ^ parameters);
public object Invoke (object[] parameters);
override this.Invoke : obj[] -> obj
Public Function Invoke (parameters As Object()) As Object

Paramètres

parameters
Object[]

Un tableau de valeurs qui correspond au nombre, à l’ordre et au type (sous les contraintes du classeur par défaut) des paramètres de ce constructeur.An array of values that matches the number, order and type (under the constraints of the default binder) of the parameters for this constructor. Si ce constructeur ne prend aucun paramètre, utilisez un tableau ne contenant pas d’éléments ou avec la valeur null, comme dans Object[] parameters = new Object[0].If this constructor takes no parameters, then use either an array with zero elements or null, as in Object[] parameters = new Object[0]. Tout objet de ce tableau qui n’est pas explicitement initialisé avec une valeur contiendra la valeur par défaut pour ce type d’objet.Any object in this array that is not explicitly initialized with a value will contain the default value for that object type. Pour les éléments de type référence, cette valeur est null.For reference-type elements, this value is null. Pour les éléments de type valeur, cette valeur est 0, 0.0 ou false, selon le type d’élément spécifique.For value-type elements, this value is 0, 0.0, or false, depending on the specific element type.

Retours

Instance de la classe associée au constructeur.An instance of the class associated with the constructor.

Exceptions

Cette classe est abstraite.The class is abstract.

- ou --or-

Le constructeur est un initialiseur de classe.The constructor is a class initializer.

Dans .NET pour les applications du Windows Store ou la Bibliothèque de classes portable, interceptez l’exception de la classe de base, MemberAccessException, à la place.In the .NET for Windows Store apps or the Portable Class Library, catch the base class exception, MemberAccessException, instead.

Le constructeur est privé ou protégé, et l’appelant ne dispose pas de MemberAccess.The constructor is private or protected, and the caller lacks MemberAccess.

Le tableau parameters ne contient pas de valeurs correspondant aux types acceptés par ce constructeur.The parameters array does not contain values that match the types accepted by this constructor.

Le constructeur appelé lève une exception.The invoked constructor throws an exception.

Un nombre incorrect de paramètres a été passé.An incorrect number of parameters was passed.

La création des types TypedReference, ArgIterator et RuntimeArgumentHandle n’est pas prise en charge.Creation of TypedReference, ArgIterator, and RuntimeArgumentHandle types is not supported.

L’appelant ne dispose pas des autorisations d’accès au code nécessaires.The caller does not have the necessary code access permission.

Remarques

Le nombre, le type et l’ordre des éléments dans le tableau parameters doivent être identiques au nombre, au type et à l’ordre des paramètres du constructeur réfléchi par cette instance.The number, type, and order of elements in the parameters array should be identical to the number, type, and order of parameters for the constructor reflected by this instance. Avant d’appeler le constructeur, Invoke garantit que l’appelant dispose de l’autorisation d’accès et vérifie que les paramètres sont valides.Before calling the constructor, Invoke ensures that the caller has access permission and verifies that the parameters are valid.

Les restrictions d’accès sont ignorées pour le code d’un niveau de confiance totale.Access restrictions are ignored for fully trusted code. Autrement dit, les constructeurs, les méthodes, les champs et les propriétés privés sont accessibles et appelés à l’aide de la réflexion chaque fois que le code est d’un niveau de confiance suffisant.That is, private constructors, methods, fields, and properties can be accessed and invoked using reflection whenever the code is fully trusted.

Notes

Pour créer une instance d’un type valeur qui n’a pas de constructeurs d’instance, utilisez la méthode CreateInstance.To create an instance of a value type that has no instance constructors, use the CreateInstance method.

Cette méthode est une méthode pratique pour la version surchargée suivante, à l’aide des valeurs par défaut.This method is a convenience method for the following overloaded version, using default values. Cette méthode ne peut pas être substituée.This method cannot be overridden.

Notes

À partir de la .NET Framework 2.0 Service Pack 1.NET Framework 2.0 Service Pack 1, cette méthode peut être utilisée pour accéder aux membres non publics si l’appelant a reçu ReflectionPermission avec l’indicateur ReflectionPermissionFlag.RestrictedMemberAccess et si le jeu d’autorisations des membres non publics est limité au jeu d’autorisations de l’appelant ou à un sous-ensemble de ce dernier.Starting with the .NET Framework 2.0 Service Pack 1.NET Framework 2.0 Service Pack 1, this method can be used to access non-public members if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the non-public members is restricted to the caller's grant set, or a subset thereof. (Consultez Considérations sur la sécurité pour la réflexion.)(See Security Considerations for Reflection.)

Pour utiliser cette fonctionnalité, votre application doit cibler .NET Framework 3.5.NET Framework 3.5 ou version ultérieure.To use this functionality, your application should target the .NET Framework 3.5.NET Framework 3.5 or later.

Sécurité

ReflectionPermission
en cas d’appel à liaison tardive via des mécanismes tels que InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]).when invoked late-bound through mechanisms such as InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]). Énumération associée : MemberAccess.Associated enumeration: MemberAccess.

Invoke(BindingFlags, Binder, Object[], CultureInfo)

En cas d'implémentation dans une classe dérivée, appelle le constructeur réfléchi par ce ConstructorInfo, avec les arguments spécifiés, sous les contraintes du Binder spécifié.When implemented in a derived class, invokes the constructor reflected by this ConstructorInfo with the specified arguments, under the constraints of the specified Binder.

public:
 abstract System::Object ^ Invoke(System::Reflection::BindingFlags invokeAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ parameters, System::Globalization::CultureInfo ^ culture);
public abstract object Invoke (System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, object[] parameters, System.Globalization.CultureInfo culture);
override this.Invoke : System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo -> obj

Paramètres

invokeAttr
BindingFlags

Une des valeurs BindingFlags qui spécifie le type de liaison.One of the BindingFlags values that specifies the type of binding.

binder
Binder

Binder qui définit un ensemble de propriétés et active la liaison, la contrainte de types d’arguments et l’appel des membres à l’aide de la réflexion.A Binder that defines a set of properties and enables the binding, coercion of argument types, and invocation of members using reflection. Si binder est null, Binder.DefaultBinding est utilisé.If binder is null, then Binder.DefaultBinding is used.

parameters
Object[]

Tableau de type Object utilisé pour rechercher des correspondances pour le nombre, l'ordre et le type des paramètres de ce constructeur, sous les contraintes de binder.An array of type Object used to match the number, order and type of the parameters for this constructor, under the constraints of binder. Si ce constructeur ne requiert pas de paramètre, passez un tableau contenant 0 (zéro) élément, comme dans Object[] parameters = new Object[0].If this constructor does not require parameters, pass an array with zero elements, as in Object[] parameters = new Object[0]. Tout objet de ce tableau qui n’est pas explicitement initialisé avec une valeur contiendra la valeur par défaut pour ce type d’objet.Any object in this array that is not explicitly initialized with a value will contain the default value for that object type. Pour les éléments de type référence, cette valeur est null.For reference-type elements, this value is null. Pour les éléments de type valeur, cette valeur est 0, 0.0 ou false, selon le type d’élément spécifique.For value-type elements, this value is 0, 0.0, or false, depending on the specific element type.

culture
CultureInfo

Un CultureInfo utilisé pour régir la contrainte de types.A CultureInfo used to govern the coercion of types. Si la valeur est null, le CultureInfo du thread actuel est utilisé.If this is null, the CultureInfo for the current thread is used.

Retours

Instance de la classe associée au constructeur.An instance of the class associated with the constructor.

Exceptions

Le tableau parameters ne contient pas de valeurs correspondant aux types acceptés par ce constructeur, sous les contraintes de binder.The parameters array does not contain values that match the types accepted by this constructor, under the constraints of the binder.

Le constructeur appelé lève une exception.The invoked constructor throws an exception.

Un nombre incorrect de paramètres a été passé.An incorrect number of parameters was passed.

La création des types TypedReference, ArgIterator et RuntimeArgumentHandle n’est pas prise en charge.Creation of TypedReference, ArgIterator, and RuntimeArgumentHandle types is not supported.

L'appelant ne dispose pas des autorisations d'accès au code requises.The caller does not have the necessary code access permissions.

Cette classe est abstraite.The class is abstract.

- ou --or-

Le constructeur est un initialiseur de classe.The constructor is a class initializer.

Le constructeur est privé ou protégé, et l’appelant ne dispose pas de MemberAccess.The constructor is private or protected, and the caller lacks MemberAccess.

Remarques

Le nombre, le type et l’ordre des éléments dans le tableau parameters doivent être identiques au nombre, au type et à l’ordre des paramètres du constructeur réfléchi par cette instance.The number, type, and order of elements in the parameters array should be identical to the number, type, and order of parameters for the constructor reflected by this instance.

Avant d’appeler le constructeur, Invoke garantit que l’appelant dispose de l’autorisation d’accès et que les paramètres sont du nombre, de l’ordre et du type corrects.Before calling the constructor, Invoke ensures that the caller has access permission and that the parameters are of the correct number, order and type.

Les restrictions d’accès sont ignorées pour le code d’un niveau de confiance totale.Access restrictions are ignored for fully trusted code. Autrement dit, les constructeurs, les méthodes, les champs et les propriétés privés sont accessibles et appelés à l’aide de la réflexion chaque fois que le code est d’un niveau de confiance suffisant.That is, private constructors, methods, fields, and properties can be accessed and invoked using reflection whenever the code is fully trusted.

Notes

Pour créer une instance d’un type valeur qui n’a pas de constructeurs d’instance, utilisez la méthode CreateInstance.To create an instance of a value type that has no instance constructors, use the CreateInstance method.

Notes

À partir de la .NET Framework 2.0 Service Pack 1.NET Framework 2.0 Service Pack 1, cette méthode peut être utilisée pour accéder aux membres non publics si l’appelant a reçu ReflectionPermission avec l’indicateur ReflectionPermissionFlag.RestrictedMemberAccess et si le jeu d’autorisations des membres non publics est limité au jeu d’autorisations de l’appelant ou à un sous-ensemble de ce dernier.Starting with the .NET Framework 2.0 Service Pack 1.NET Framework 2.0 Service Pack 1, this method can be used to access non-public members if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the non-public members is restricted to the caller's grant set, or a subset thereof. (Consultez Considérations sur la sécurité pour la réflexion.)(See Security Considerations for Reflection.)

Pour utiliser cette fonctionnalité, votre application doit cibler .NET Framework 3.5.NET Framework 3.5 ou version ultérieure.To use this functionality, your application should target the .NET Framework 3.5.NET Framework 3.5 or later.

Sécurité

ReflectionPermission
en cas d’appel à liaison tardive via des mécanismes tels que InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]).when invoked late-bound through mechanisms such as InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]). Énumération associée : MemberAccess.Associated enumeration: MemberAccess.

Voir aussi

S’applique à