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
|
Type.GetNestedType, méthode (String)
Recherche le type imbriqué public avec le nom spécifié.
Assembly : mscorlib (dans mscorlib.dll)
Paramètres
- name
- Type : System.String
Chaîne contenant le nom du type imbriqué à obtenir.
Valeur de retour
Type : System.TypeObjet représentant le type imbriqué public avec le nom spécifié, s'il est trouvé ; sinon, null .
Implémentations
_Type.GetNestedType(String)| Exception | Condition |
|---|---|
| ArgumentNullException |
name est null. |
La recherche de name respecte la casse.
Utilisez le nom simple de la classe imbriquée pour name. Ne la qualifiez pas avec le nom de la classe externe. Pour une classe imbriquée générique, utilisez le nom tronqué — c'est-à-dire que vous devez ajouter un accent grave et le nombre d'arguments génériques. Par exemple, utilisez la chaîne "Inner`1" pour obtenir la classe imbriquée générique Inner<T> (Inner(Of T) en Visual Basic). N'incluez pas de syntaxe spécifique à la langue pour les paramètres de type.
Le tableau suivant indique les membres d'une classe de base qui sont retournés par les méthodes Get lors de la réflexion sur un type.
|
Type de membre |
Static |
Non statique |
|---|---|---|
|
Constructeur |
Non |
Non |
|
Champ |
Non |
Oui. Un champ est toujours masqué-par-nom-et-signature. |
|
Événement |
Non applicable |
La règle du système de type commun (CTS, Common Type System) est que l'héritage est le même que celui des méthodes qui implémentent la propriété. La réflexion traite les propriétés comme masquées-par-nom-et-signature. Voir la remarque 2 ci-dessous. |
|
Méthode |
Non |
Oui. Une méthode (à la fois virtuelle et non virtuelle) peut être masquée par nom ou masquée-par-nom-et-signature. |
|
De type imbriqué |
Non |
Non |
|
Propriété |
Non applicable |
La règle du système de type commun (CTS, Common Type System) est que l'héritage est le même que celui des méthodes qui implémentent la propriété. La réflexion traite les propriétés comme masquées-par-nom-et-signature. Voir la remarque 2 ci-dessous. |
-
Masquer-par-nom-et-signature prend en compte toutes les parties de la signature, y compris les modificateurs personnalisés, les types de retour, les types de paramètres, les sentinelles et les conventions d'appel non managées. Il s'agit d'une comparaison binaire.
-
Pour la réflexion, les propriétés et événements sont masqués-par-nom-et-signature. Si une propriété a un accesseur get et set dans la classe de base, mais si la classe dérivée n'a qu'un accesseur get, la propriété de la classe dérivée masque la propriété de la classe de base et vous ne pourrez pas accéder à l'accesseur Set sur la classe de base.
-
Les attributs personnalisés ne font pas partie du système de type commun (CTS, Common Type System).
Si le Type actuel représente un paramètre de type dans la définition d'un type ou d'une méthode générique, cette méthode recherche les types imbriqués de la contrainte de classe.
Si un type imbriqué est générique, cette méthode retourne sa définition de type générique. Cela est vrai même si le type générique englobant est un type construit fermé.
Remarque
|
|---|
|
Si le Type actuel représente un type générique défini en C#, Visual Basic ou C++, ses types imbriqués sont tous génériques même s'ils ne possèdent pas leurs propres paramètres génériques. Cela n'est pas nécessairement vrai pour les types imbriqués définis dans des assemblys dynamiques ou compilés avec l'Ilasm.exe (Assembleur MSIL). |
Pour plus d'informations sur les types génériques imbriqués et sur la construction de types génériques imbriqués à partir de leurs définitions de type générique, consultez MakeGenericType.
Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, 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.
Remarque