Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte.
Traduction
Source
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

Type.GetType, méthode (String, Func<AssemblyName, Assembly>, Func<Assembly, String, Boolean, Type>, Boolean)

Obtient le type portant le nom spécifié, en indiquant s'il faut lever une exception si le type est introuvable et, éventuellement, en fournissant des méthodes personnalisées qui permettent de résoudre l'assembly et le type.

Espace de noms :  System
Assembly :  mscorlib (dans mscorlib.dll)
public static Type GetType(
	string typeName,
	Func<AssemblyName, Assembly> assemblyResolver,
	Func<Assembly, string, bool, Type> typeResolver,
	bool throwOnError
)

Paramètres

typeName
Type : System.String
Nom du type à obtenir. Si le paramètre typeResolver est fourni, le nom de type peut être n'importe quelle chaîne pouvant être résolue par typeResolver. Si le paramètre assemblyResolver est fourni ou si la résolution de type standard est utilisée, typeName doit être un nom d'assembly complet (consultez AssemblyQualifiedName), à moins que le type ne se trouve dans l'assembly en cours d'exécution ou dans Mscorlib.dll, auquel cas, il suffit de fournir le nom de type qualifié par son espace de noms.
assemblyResolver
Type : System.Func<AssemblyName, Assembly>
Méthode que trouve et retourne l'assembly spécifié dans typeName. Le nom de l'assembly est passé à assemblyResolver en tant qu'objet AssemblyName. Si typeName ne contient pas le nom d'un assembly, assemblyResolver n'est pas appelé. Si assemblyResolver n'est pas fourni, une résolution d'assembly standard est effectuée.
Attention   Ne passez pas de méthodes provenant d'appelants inconnus ou non fiables. Vous risqueriez d'élever les privilèges du code malveillant. Utilisez uniquement les méthodes que vous fournissez ou avec lesquelles vous êtes familiarisé.
typeResolver
Type : System.Func<Assembly, String, Boolean, Type>
Méthode qui trouve et retourne le type spécifié par typeName à partir de l'assembly retourné par assemblyResolver ou par la résolution d'assembly standard. Si aucun assembly n'est fourni, la méthode peut en fournir un. La méthode prend également un paramètre qui spécifie s'il faut exécuter une recherche non sensible à la casse ; false est passé à ce paramètre.
Attention   Ne passez pas de méthodes provenant d'appelants inconnus ou non fiables.
throwOnError
Type : System.Boolean
true pour lever une exception si le type est introuvable ; false pour retourner la valeur null. La spécification de false supprime également d'autres conditions d'exception, mais pas toutes. Consultez la section Exceptions.

Valeur de retour

Type : System.Type
Type portant le nom spécifié. Si le type est introuvable, le paramètre throwOnError spécifie si null est retourné ou si une exception est levée. Dans certains cas, une exception est levée indépendamment de la valeur de throwOnError. Consultez la section Exceptions.
Exception Condition
ArgumentNullException

typeName est null.

TargetInvocationException

Un initialiseur de classe est appelé et lève une exception.

TypeLoadException

throwOnError a la valeur true et le type est introuvable.

ou

throwOnError a la valeur true et typeName contient caractères non valides, tels qu'une tabulation incorporée.

ou

throwOnError a la valeur true et typeName est une chaîne vide.

ou

throwOnError a la valeur true et typeName représente un type de tableau dont la taille est non valide.

ou

typeName représente un tableau de TypedReference.

ArgumentException

Une erreur se produit lorsque typeName est analysé dans un nom de type et un nom d'assembly (par exemple, lorsque le nom de type simple inclut un caractère spécial sans séquence d'échappement).

ou

throwOnError a la valeur true et typeName contient une syntaxe non valide (par exemple, "MyType[,*,]").

ou

typeName représente un type générique qui a un type pointeur, un type ByRef ou un type Void comme l'un de ses arguments de type.

ou

typeName représente un type générique qui a un nombre incorrect d'arguments de type.

ou

typeName représente un type générique, et l'un de ses arguments de type ne satisfait pas les contraintes spécifiées pour le paramètre de type correspondant.

FileNotFoundException

throwOnError a la valeur true et l'assembly ou l'une de ses dépendances est introuvable.

ou

typeName contient un nom d'assembly non valide.

ou

typeName est un nom d'assembly valide sans nom de type.

FileLoadException

L'assembly ou l'une de ses dépendances a été trouvé, mais n'a pas pu être chargé.

BadImageFormatException

L'assembly ou l'une de ses dépendances n'est pas valide.

ou

L'assembly a été compilé avec une version du Common Language Runtime ultérieure à la version actuellement chargée.

Les scénarios d'utilisation pour cette méthode et des détails sur les paramètres typeResolver et assemblyResolver se trouvent dans la surcharge de méthode GetType(String, Func<AssemblyName, Assembly>, Func<Assembly, String, Boolean, Type>, Boolean, Boolean).

Appeler cette surcharge de méthode produit le même résultat que l'appel de la surcharge de méthode GetType(String, Func<AssemblyName, Assembly>, Func<Assembly, String, Boolean, Type>, Boolean, Boolean) avec la spécification de false pour le paramètre ignoreCase.

.NET Framework

Pris en charge dans : 4

.NET Framework Client Profile

Pris en charge dans : 4

Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Cela vous a-t-il été utile ?
(1500 caractères restants)
Contenu de la communauté Ajouter
Annotations FAQ