Partager via


CodeTypeReference.BaseType Propriété

Définition

Obtient ou définit le nom du type référencé.

public:
 property System::String ^ BaseType { System::String ^ get(); void set(System::String ^ value); };
public string BaseType { get; set; }
member this.BaseType : string with get, set
Public Property BaseType As String

Valeur de propriété

Nom du type référencé.

Remarques

Cette propriété contient le nom du type, sauf s’il s’agit d’un type tableau, auquel cas il s’agit du type d’élément de tableau.

Notes

Le nom de la propriété peut être trompeur. Cette propriété contient uniquement le nom de type avec les ornements de tableau ou les arguments de type générique supprimés, et non le type de base ou parent comme prévu. Par exemple, la BaseType valeur de System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]] est System.Collections.Generic.Dictionary`2.

Représentation des types génériques

Les informations contenues dans cette section sont destinées aux développeurs de fournisseurs CodeDom et s’appliquent uniquement aux langages conformes CLS. La valeur de retour peut contenir des types génériques. Les types génériques sont mis en forme avec le nom du type suivi d’un accent grave (« ' ») suivi d’un nombre d’arguments de type générique. Les arguments de type générique se trouvent dans le CodeTypeReferenceCollection retourné par la TypeArguments propriété . Les valeurs retournées par BaseType et associées TypeArguments contiennent le même contenu que la valeur du type retourné par la réflexion.

Par exemple, une construction Dictionary<TKey,TValue>K est une chaîne et V est une construction List<T> d’entiers est représentée par la réflexion comme suit (avec les informations d’assembly supprimées) :

System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]]  

L’analyse récursive de la BaseType propriété à partir de pour CodeTypeReferenceDictionary<TKey,TValue> génère les mêmes chaînes que la représentation de réflexion ci-dessus :

Le nombre d’arguments de type doit être utilisé lors de l’analyse des valeurs associées TypeArguments . La pratique courante consiste à supprimer le nombre d’arguments de type du code généré, mais la pratique est propre au compilateur. Il est important de noter que le nombre d’arguments de type se trouve dans un nom de type imbriqué, auquel cas il est suivi d’un signe plus (« + »).

Notes

Lors de la création d’un générique CodeTypeReference, la pratique recommandée consiste à spécifier les arguments de type en tant qu’objets CodeTypeReference ou à utiliser le constructeur qui prend un Type. L’utilisation du constructeur qui crée un CodeTypeReference à partir d’une chaîne peut entraîner des erreurs d’argument de type non détectables.

S’applique à