CodeTypeReference.BaseType 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定要參考的型別名稱。
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
屬性值
所參考的型別名稱。
備註
此屬性包含類型的名稱,除非它是數位類型,在此情況下,它是數位項目類型。
注意
屬性的名稱可能會產生誤導。 此屬性只包含任何數位裝飾或已移除泛型型別自變數的類型名稱,而不是如預期般基底或父類型。 例如, BaseType 值 System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]]
System.Collections.Generic.Dictionary`2
為 。
泛型型別的表示法
本節中的資訊適用於 CodeDom 提供者開發人員,僅適用於符合 CLS 規範的語言。 傳回值可以包含泛型型別。 泛型型別的格式是型別的名稱,後面接著重音符號 (“'”) 後面接著泛型類型自變數的計數。 泛型型別自變數可以在 屬性所傳回的 TypeArguments 中找到CodeTypeReferenceCollection。 所傳 BaseType 回的值與反映 TypeArguments 所傳回之型別的值包含相同的內容。
例如,建構Dictionary<TKey,TValue>的 其中 K
是字串,而且是整數的建構List<T>,會以反映表示,如下列 (,其中V
已移除元件資訊) :
System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]]
遞迴剖析 BaseType 中的 屬性CodeTypeReferenceDictionary<TKey,TValue>會產生與上述反映表示法相同的字串:
父BaseTypeCodeTypeReference代的 屬性會傳回下列內容:
System.Collections.Generic.Dictionary`2
BaseType集合中TypeArguments第一個CodeTypeReference物件的 屬性會傳回下列內容:
System.String
BaseType集合中TypeArguments第二個CodeTypeReference物件的 屬性會傳回下列內容:
System.Collections.Generic.List`1
物件的 TypeArgumentsCodeTypeReference 屬性會
System.Collections.Generic.List`1
傳回下列內容:System.Int32
剖析相關聯的 TypeArguments 值時,應該使用型別自變數計數。 常見的做法是從產生的程式代碼中移除類型自變數計數,但做法是編譯程式特有的。 請務必注意,類型自變數計數可以在巢狀類型名稱中找到,在此情況下,其後面接著加號 (“+”) 。
注意
建立泛型 CodeTypeReference時,建議的做法是將型別自變數指定為 CodeTypeReference 物件,或使用採用 Type的建構函式。 使用從字串建立 CodeTypeReference 的建構函式可能會導致無法探索的類型自變數錯誤。