CodeTypeReference.BaseType Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví název odkazovaného 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
Hodnota vlastnosti
Název odkazovaného typu.
Poznámky
Tato vlastnost obsahuje název typu, pokud se nejedná o typ pole, v takovém případě se jedná o typ prvku pole.
Poznámka:
Název vlastnosti může být zavádějící. Tato vlastnost obsahuje pouze název typu s odebranými argumenty polí nebo argumenty obecného typu, nikoli základním nebo nadřazeným typem, jak by mohlo být očekáváno. Například BaseType hodnota pro System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]] hodnotu je System.Collections.Generic.Dictionary`2.
Reprezentace obecných typů
Informace v této části jsou určené pro vývojáře zprostředkovatele CodeDom a vztahují se pouze na jazyky kompatibilní se specifikací CLS. Návratová hodnota může obsahovat obecné typy. Obecné typy jsou formátovány názvem typu následovaným čárkou ("") následovanou čárkou a počtem argumentů obecného typu. Argumenty obecného typu lze najít ve CodeTypeReferenceCollection vrácené TypeArguments vlastnosti. Hodnoty vrácené BaseType a přidružené TypeArguments obsahují stejný obsah jako hodnota typu vráceného reflexí.
Například konstruovaný Dictionary<TKey,TValue> , kde K je řetězec a V je tvořený List<T> celými čísly, je reprezentován reflexí jako následující (s odebranými informacemi o sestavení):
System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]]
Rekurzivní analýza BaseType vlastnosti z objektu CodeTypeReference for Dictionary<TKey,TValue> poskytuje stejné řetězce jako výše uvedená reprezentace reflexe:
Vlastnost BaseType nadřazeného objektu CodeTypeReference vrátí následující:
System.Collections.Generic.Dictionary`2Vlastnost BaseType prvního CodeTypeReference objektu v kolekci TypeArguments vrátí následující:
System.StringVlastnost BaseType druhého CodeTypeReference objektu v kolekci TypeArguments vrátí následující:
System.Collections.Generic.List`1Vlastnost TypeArguments v objektu CodeTypeReference pro
System.Collections.Generic.List`1vrátí následující:System.Int32
Počet argumentů typu by se měl použít při analýze přidružených TypeArguments hodnot. Běžným postupem je odebrat počet argumentů typu z vygenerovaného kódu, ale tento postup je specifický pro kompilátor. Je důležité si uvědomit, že počet argumentů typu lze najít vnořeném názvu typu, v takovém případě následuje znaménko plus ("+").
Poznámka:
Při vytváření obecného CodeTypeReferencetypu je doporučeným postupem zadat argumenty typu jako CodeTypeReference objekty nebo použít konstruktor, který přebírá Type. Použití konstruktoru, který vytvoří CodeTypeReference z řetězce, může vést k nediscoverable typ-argument chyby.