Freigeben über


CodeTypeReference.BaseType Eigenschaft

Definition

Ruft den Namen des Typs ab, auf den verwiesen wird, oder legt diesen fest.

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

Eigenschaftswert

Der Name der Typbibliothek, auf die verwiesen wird.

Hinweise

Diese Eigenschaft enthält den Namen des Typs, es sei denn, es handelt sich um einen Arraytyp, in diesem Fall ist es der Arrayelementtyp.

Hinweis

Der Name der Eigenschaft kann irreführend sein. Diese Eigenschaft enthält nur den Typnamen mit entfernten Arrayschmuck oder generischen Typargumenten, nicht wie erwartet den Basis- oder übergeordneten Typ. Der Wert für System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]] ist z. BSystem.Collections.Generic.Dictionary`2BaseType. .

Darstellung generischer Typen

Die Informationen in diesem Abschnitt sind für CodeDom-Anbieterentwickler bestimmt und gelten nur für CLS-kompatible Sprachen. Der Rückgabewert kann generische Typen enthalten. Generische Typen werden mit dem Namen des Typs formatiert, gefolgt von einem ernsten Akzent ("'") gefolgt von einer Anzahl der generischen Typargumente. Die generischen Typargumente finden Sie in dem, das CodeTypeReferenceCollection von der TypeArguments -Eigenschaft zurückgegeben wird. Die von BaseType zurückgegebenen und zugeordneten TypeArguments Werte enthalten denselben Inhalt wie der Wert des typs, der von reflektion zurückgegeben wird.

Beispielsweise wird ein konstruierter Dictionary<TKey,TValue> , wobei K eine Zeichenfolge und V eine Zusammenstellung List<T> ganzer Zahlen ist, durch Reflektion wie folgt dargestellt (wobei die Assemblyinformationen entfernt wurden):

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

Das rekursive Analysieren der BaseType -Eigenschaft aus dem CodeTypeReference für Dictionary<TKey,TValue> ergibt dieselben Zeichenfolgen wie die obige Spiegelungsdarstellung:

Die Typargumentanzahl sollte beim Analysieren der zugeordneten TypeArguments Werte verwendet werden. Die gängige Praxis besteht darin, die Anzahl der Typargumente aus dem generierten Code zu entfernen, aber die Praxis ist compilerspezifisch. Es ist wichtig zu beachten, dass die Typargumentanzahl innerhalb eines geschachtelten Typnamens gefunden werden kann, in diesem Fall folgt ein Pluszeichen ("+").

Hinweis

Beim Erstellen eines generischen CodeTypeReferenceTyps wird empfohlen, die Typargumente als CodeTypeReference Objekte anzugeben oder den Konstruktor zu verwenden, der einen Typeakzeptiert. Die Verwendung des Konstruktors, der eine CodeTypeReference aus einer Zeichenfolge erstellt, kann zu nicht zu behebbaren Typargumentfehlern führen.

Gilt für: