Udostępnij za pośrednictwem


CodeTypeReference.BaseType Właściwość

Definicja

Pobiera lub ustawia nazwę przywoływanego typu.

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

Wartość właściwości

Nazwa przywoływanego typu.

Uwagi

Ta właściwość zawiera nazwę typu, chyba że jest typem tablicy, w takim przypadku jest to typ elementu tablicy.

Uwaga

Nazwa właściwości może być myląca. Ta właściwość zawiera tylko nazwę typu z dowolnymi ozdobami tablicy lub argumentami typów ogólnych usuniętych, a nie typu podstawowego lub nadrzędnego, jak można się spodziewać. Na przykład wartość parametru BaseTypeSystem.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]] to System.Collections.Generic.Dictionary`2.

Reprezentacja typów ogólnych

Informacje w tej sekcji są przeznaczone dla deweloperów dostawców CodeDom i dotyczą tylko języków zgodnych ze standardem CLS. Wartość zwracana może zawierać typy ogólne. Typy ogólne są formatowane z nazwą typu, po którym następuje akcent grobowy ("'"), po którym następuje liczba argumentów typu ogólnego. Argumenty typu ogólnego można znaleźć w zwracanej CodeTypeReferenceCollection przez TypeArguments właściwość . Wartości zwracane przez BaseType i skojarzone TypeArguments zawierają tę samą zawartość co wartość typu zwróconego przez odbicie.

Na przykład skonstruowany Dictionary<TKey,TValue> obiekt, w którym K jest ciągiem i V jest skonstruowany List<T> z liczb całkowitych, jest reprezentowany przez odbicie jako następujące (z usuniętymi informacjami o zestawie):

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

Rekursywnie analizowanie BaseType właściwości z CodeTypeReference elementu for Dictionary<TKey,TValue> daje te same ciągi co reprezentacja odbicia powyżej:

Liczba argumentów typu powinna być używana podczas analizowania skojarzonych TypeArguments wartości. Typowym rozwiązaniem jest usunięcie liczby argumentów typu z wygenerowanego kodu, ale praktyka jest specyficzna dla kompilatora. Należy pamiętać, że liczbę argumentów typu można znaleźć w zagnieżdżonej nazwie typu, w którym przypadku następuje znak plus ("+").

Uwaga

Podczas tworzenia ogólnego CodeTypeReference, zalecaną praktyką jest określenie argumentów typu jako CodeTypeReference obiektów lub użycie konstruktora, który przyjmuje Typewartość . Użycie konstruktora tworzącego element CodeTypeReference na podstawie ciągu może prowadzić do niepokrytych błędów argumentów typu.

Dotyczy