Exporter (0) Imprimer
Développer tout

ConstructorInfo.Invoke, méthode (BindingFlags, Binder, Object[], CultureInfo)

Mise à jour : novembre 2007

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

Espace de noms :  System.Reflection
Assembly :  mscorlib (dans mscorlib.dll)

public abstract Object Invoke(
	BindingFlags invokeAttr,
	Binder binder,
	Object[] parameters,
	CultureInfo culture
)
public abstract Object Invoke(
	BindingFlags invokeAttr,
	Binder binder,
	Object[] parameters,
	CultureInfo culture
)
public abstract function Invoke(
	invokeAttr : BindingFlags, 
	binder : Binder, 
	parameters : Object[], 
	culture : CultureInfo
) : Object

Paramètres

invokeAttr
Type : System.Reflection.BindingFlags

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

binder
Type : System.Reflection.Binder

Binder qui définit un jeu de propriétés et active la liaison, la contrainte des types d'arguments ainsi que l'appel des membres à l'aide de la réflexion. Si binder est null, Binder.DefaultBinding est utilisé.

parameters
Type : System.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 de ce tableau non explicitement initialisé avec une valeur contient la valeur par défaut de 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
Type : System.Globalization.CultureInfo

CultureInfo utilisé pour régir la contrainte de types. Si la valeur est null, CultureInfo du thread en cours est utilisé.

Valeur de retour

Type : System.Object

Instance de la classe associée au constructeur.

ExceptionCondition
ArgumentException

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

TargetInvocationException

Le constructeur appelé lève une exception.

TargetParameterCountException

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

NotSupportedException

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

SecurityException

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

MemberAccessException

La classe est abstraite.

– ou –

Le constructeur est un initialiseur de classe.

MethodAccessException

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

Le nombre, le type et l'ordre des éléments du tableau parameters devraient être identiques aux nombre, type et ordre des paramètres du constructeur réfléchi par cette instance.

Avant d'appeler le constructeur, Invoke s'assure que l'appelant dispose des autorisations d'accès nécessaires et vérifie que le nombre, l'ordre et le type des paramètres sont corrects.

Les restrictions d'accès sont ignorées pour le code d'un niveau de confiance suffisant. En d'autres termes, les constructeurs privés, les méthodes, les champs et les propriétés sont accessibles et peuvent être appelés à l'aide de la réflexion lorsque le code est d'un niveau de confiance suffisant.

Remarque :

Pour créer une instance d'un type valeur qui n'a pas de constructeurs d'instance, utilisez la méthode CreateInstance.

Remarque :

À partir du .NET Framework version 2.0 Service Pack 1, cette méthode peut être utilisée pour accéder aux membres non publics si l'autorisation ReflectionPermission avec l'indicateur ReflectionPermissionFlag.RestrictedMemberAccess a été accordée à l'appelant 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 jeu. Consultez Considérations sur la sécurité de la réflexion.

Pour utiliser cette fonctionnalité, votre application doit cibler le .NET Framework version 3.5. Pour plus d'informations, consultez la page Architecture de .NET Framework 3.5.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professionnel Édition x64, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile pour Smartphone, Windows Mobile pour Pocket PC, Xbox 360

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

.NET Framework

Pris en charge dans : 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Pris en charge dans : 3.5, 2.0, 1.0

XNA Framework

Pris en charge dans : 2.0, 1.0

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft