Freigeben über


CodeTypeReference.BaseType Eigenschaft

Definition

Dient zum Abrufen oder Festlegen des Namens des Typs, auf den verwiesen wird.

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 des Typs, auf den verwiesen wird.

Hinweise

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

Hinweis

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

Darstellung generischer Typen

Die Informationen in diesem Abschnitt sind für CodeDom-Anbieterentwickler vorgesehen 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 Gravisakzent ("'") gefolgt von einer Anzahl der generischen Typargumente. Die generischen Typargumente finden Sie in der CodeTypeReferenceCollection von der TypeArguments Eigenschaft zurückgegebenen. Die von BaseType und dem zugeordneten TypeArguments Wert zurückgegebenen Werte enthalten denselben Inhalt wie der Wert des Typs, der von Spiegelung zurückgegeben wird.

Beispielsweise wird eine konstruierte Dictionary<TKey,TValue> Stelle, bei K der es sich um eine Zeichenfolge handelt und V eine konstruierte List<T> ganze Zahl ist, durch Spiegelung wie folgt dargestellt (wobei die Assemblyinformationen entfernt werden):

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

Rekursives Analysieren der BaseType Eigenschaft aus der CodeTypeReference Eigenschaft für Dictionary<TKey,TValue> ergibt die gleichen Zeichenfolgen wie die Spiegelungsdarstellung oben:

Die Typargumentanzahl sollte beim Analysieren der zugehörigen TypeArguments Werte verwendet werden. Die gängige Methode besteht darin, die Typargumentanzahl aus dem generierten Code zu entfernen, aber die Vorgehensweise 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 einer generischen CodeTypeReferenceMethode wird empfohlen, die Typargumente als CodeTypeReference Objekte anzugeben oder den Konstruktor zu verwenden, der eine Type. Die Verwendung des Konstruktors, der eine CodeTypeReference aus einer Zeichenfolge erstellt, kann zu nicht behebbaren Typargumentfehlern führen.

Gilt für: