Partager via


ConstructorInfo.Invoke Méthode

Définition

Appelle le constructeur réfléchi par cette 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.

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é.

Invoke(Object[])

Source:
ConstructorInfo.cs
Source:
ConstructorInfo.cs
Source:
ConstructorInfo.cs

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.

public:
 virtual System::Object ^ Invoke(cli::array <System::Object ^> ^ parameters);
public:
 System::Object ^ Invoke(cli::array <System::Object ^> ^ parameters);
public virtual object Invoke (object[] parameters);
public object Invoke (object?[]? parameters);
public object Invoke (object[] parameters);
override this.Invoke : obj[] -> obj
Public Overridable Function Invoke (parameters As Object()) As Object
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. 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]. Tout objet dans ce tableau qui n’est pas explicitement initialisé avec une valeur contiendra la valeur par défaut pour ce type d’objet. Pour les éléments de type référence, cette valeur est null. Pour les éléments de type valeur, cette valeur est 0, 0.0 ou false, selon le type d’élément spécifique.

Retours

Instance de la classe associée au constructeur.

Exceptions

Cette classe est abstraite.

- ou -

Le constructeur est un initialiseur de classe.

Le constructeur est privé ou protégé, et l’appelant ne dispose pas de MemberAccess.

Remarque : Dans .NET pour les applications du Windows Store ou la bibliothèque de classes portable, interceptez l’exception de classe de base, MemberAccessException, à la place.

Le tableau parameters ne contient pas de valeurs correspondant aux types acceptés par ce constructeur.

Le constructeur appelé lève une exception.

Un nombre incorrect de paramètres a été passé.

La création des types TypedReference, ArgIterator et RuntimeArgumentHandle n’est pas prise en charge.

L’appelant ne dispose pas des autorisations d’accès au code nécessaires.

Remarques

Le nombre, le type et l’ordre des éléments dans le parameters tableau doivent être identiques au nombre, au type et à l’ordre des paramètres du constructeur reflétés par cette instance. Avant d’appeler le constructeur, Invoke vérifiez que l’appelant dispose de l’autorisation d’accès et vérifie que les paramètres sont valides.

Les restrictions d’accès sont ignorées pour le code entièrement fiable. Autrement dit, les constructeurs privés, les méthodes, les champs et les propriétés sont accessibles et appelés à l’aide de la réflexion chaque fois que le code est entièrement approuvé.

Notes

Pour créer une instance d’un type valeur qui n’a aucun constructeur d’instance, utilisez la CreateInstance méthode .

Cette méthode est une méthode pratique pour la version surchargée suivante, en utilisant des valeurs par défaut. Cette méthode ne peut pas être substituée.

Notes

À compter de .NET Framework 2.0, cette méthode peut être utilisée pour accéder aux membres non publics si l’appelant a reçu ReflectionPermission l’indicateur ReflectionPermissionFlag.RestrictedMemberAccess et si le jeu d’octrois des membres non publics est limité au jeu d’octrois de l’appelant ou à un sous-ensemble de celui-ci. (Consultez Considérations relatives à la sécurité pour la réflexion.) Pour utiliser cette fonctionnalité, votre application doit cibler .NET Framework 3.5 ou version ultérieure.

S’applique à

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

Source:
ConstructorInfo.cs
Source:
ConstructorInfo.cs
Source:
ConstructorInfo.cs

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é.

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);
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
Public MustOverride Function Invoke (invokeAttr As BindingFlags, binder As Binder, parameters As Object(), culture As CultureInfo) As Object

Paramètres

invokeAttr
BindingFlags

Une des valeurs BindingFlags qui spécifie le type de liaison.

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. Si binder est null, Binder.DefaultBinding est utilisé.

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. 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]. Tout objet dans ce tableau qui n’est pas explicitement initialisé avec une valeur contiendra la valeur par défaut pour ce type d’objet. Pour les éléments de type référence, cette valeur est null. Pour les éléments de type valeur, cette valeur est 0, 0.0 ou false, selon le type d’élément spécifique.

culture
CultureInfo

Un CultureInfo utilisé pour régir la contrainte de types. Si la valeur est null, le CultureInfo du thread actuel est utilisé.

Retours

Instance de la classe associée au constructeur.

Exceptions

Le tableau parameters ne contient pas de valeurs correspondant aux types acceptés par ce constructeur, sous les contraintes de binder.

Le constructeur appelé lève une exception.

Un nombre incorrect de paramètres a été passé.

La création des types TypedReference, ArgIterator et RuntimeArgumentHandle n’est pas prise en charge.

L'appelant ne dispose pas des autorisations d'accès au code requises.

Cette classe est abstraite.

- ou -

Le constructeur est un initialiseur de classe.

Le constructeur est privé ou protégé, et l’appelant ne dispose pas de MemberAccess.

Remarques

Le nombre, le type et l’ordre des éléments dans le parameters tableau doivent être identiques au nombre, au type et à l’ordre des paramètres du constructeur reflétés par cette instance.

Avant d’appeler le constructeur, Invoke vérifiez 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.

Les restrictions d’accès sont ignorées pour le code entièrement fiable. Autrement dit, les constructeurs privés, les méthodes, les champs et les propriétés sont accessibles et appelés à l’aide de la réflexion chaque fois que le code est entièrement approuvé.

Notes

Pour créer une instance d’un type valeur qui n’a aucun constructeur d’instance, utilisez la CreateInstance méthode .

Notes

À compter de .NET Framework 2.0, cette méthode peut être utilisée pour accéder aux membres non publics si l’appelant a reçu ReflectionPermission l’indicateur ReflectionPermissionFlag.RestrictedMemberAccess et si le jeu d’octrois des membres non publics est limité au jeu d’octrois de l’appelant ou à un sous-ensemble de celui-ci. (Consultez Considérations relatives à la sécurité pour la réflexion.) Pour utiliser cette fonctionnalité, votre application doit cibler .NET Framework 3.5 ou version ultérieure.

Voir aussi

S’applique à