CodeTypeReference.BaseType Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene o imposta il nome del tipo al quale viene fatto riferimento.
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
Valore della proprietà
Nome del tipo a cui si fa riferimento.
Commenti
Questa proprietà contiene il nome del tipo, a meno che non sia un tipo di matrice, nel qual caso è il tipo di elemento della matrice.
Nota
Il nome della proprietà può essere fuorviante. Questa proprietà contiene solo il nome del tipo con qualsiasi matrice adornments o argomenti di tipo generico rimossi, non il tipo di base o padre come potrebbe essere previsto. Ad esempio, il BaseType valore per System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]]
è System.Collections.Generic.Dictionary`2
.
Rappresentazione dei tipi generici
Le informazioni contenute in questa sezione sono destinate agli sviluppatori di provider CodeDom e si applicano solo ai linguaggi conformi a CLS. Il valore restituito può contenere tipi generici. I tipi generici vengono formattati con il nome del tipo seguito da un accento grave ("'") seguito da un conteggio degli argomenti di tipo generico. Gli argomenti di tipo generico sono disponibili nell'oggetto CodeTypeReferenceCollection restituito dalla TypeArguments proprietà . I valori restituiti da BaseType e l'oggetto associato TypeArguments contengono lo stesso contenuto del valore del tipo restituito dalla reflection.
Ad esempio, un oggetto costruito Dictionary<TKey,TValue> dove K
è una stringa ed V
è un oggetto costruito List<T> di interi è rappresentato dalla reflection come indicato di seguito (con le informazioni sull'assembly rimosse):
System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]]
L'analisi ricorsiva della BaseType proprietà da CodeTypeReference per Dictionary<TKey,TValue> restituisce le stesse stringhe della rappresentazione di reflection precedente:
La BaseType proprietà per l'elemento padre CodeTypeReference restituisce quanto segue:
System.Collections.Generic.Dictionary`2
La BaseType proprietà per il primo CodeTypeReference oggetto dell'insieme TypeArguments restituisce quanto segue:
System.String
La BaseType proprietà per il secondo CodeTypeReference oggetto nell'insieme TypeArguments restituisce quanto segue:
System.Collections.Generic.List`1
La TypeArguments proprietà nell'oggetto CodeTypeReference per
System.Collections.Generic.List`1
restituisce quanto segue:System.Int32
Il conteggio degli argomenti di tipo deve essere utilizzato durante l'analisi dei valori associati TypeArguments . La procedura comune consiste nel rimuovere il numero di argomenti di tipo dal codice generato, ma la procedura è specifica del compilatore. È importante notare che il conteggio degli argomenti di tipo può essere trovato all'interno di un nome di tipo annidato, nel qual caso è seguito da un segno più ("+").
Nota
Quando si crea un oggetto generico CodeTypeReference, è consigliabile specificare gli argomenti di tipo come CodeTypeReference oggetti o usare il costruttore che accetta un oggetto Type. L'uso del costruttore che crea un CodeTypeReference oggetto da una stringa può causare errori di argomento di tipo non esplorabili.