CodeTypeReference.BaseType プロパティ
アセンブリ: System (system.dll 内)

Dim instance As CodeTypeReference Dim value As String value = instance.BaseType instance.BaseType = value
/** @property */ public String get_BaseType () /** @property */ public void set_BaseType (String value)
参照される型の名前。

型が配列型でない場合は、このプロパティに型の名前が格納されます。型が配列型の場合は、このプロパティに配列の要素の型が格納されます。
![]() |
---|
このプロパティの名前は誤解を招く可能性があります。このプロパティには、基本型や親型ではなく、配列表示要素またはジェネリック型引数を除いた型名だけが格納されます。たとえば、System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]] の BaseType の値は、System.Collections.Generic.Dictionary`2 です。 |
ジェネリック型の表現
ここで説明する内容は、CodeDom プロバイダの開発者向けに作成されており、CLS 準拠の言語だけに適用されます。戻り値には、ジェネリック型が格納されることがあります。ジェネリック型の書式として、型名、抑音アクセント ("`")、ジェネリック型引数の数の順に指定します。ジェネリック型の引数は、TypeArguments プロパティによって返される CodeTypeReferenceCollection でも検出されます。BaseType の戻り値と、関連付けられた TypeArguments は、リフレクションで返される型の値と同じ内容を含みます。
たとえば、構築された Dictionary (K は文字列、V は構築された整数の List) は、リフレクションによって次のように表されます (アセンブリ情報は削除)。
System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]]
BaseType プロパティを Dictionary の CodeTypeReference から再帰的に解析すると、前述のようなリフレクション表現と同じ文字列が作成されます。
-
親 CodeTypeReference の BaseType プロパティは、次の値を返します。
System.Collections.Generic.Dictionary`2
-
TypeArguments コレクション内の最初の CodeTypeReference オブジェクトの BaseType プロパティは、次の値を返します。
System.String
-
TypeArguments コレクション内の 2 番目の CodeTypeReference オブジェクトの BaseType プロパティは、次の値を返します。
System.Collections.Generic.List`1
-
System.Collections.Generic.List`1 の CodeTypeReference オブジェクトの TypeArguments プロパティは、次の値を返します。
System.Int32
関連付けられた TypeArguments 値の解析時には、型引数の数を使用する必要があります。通常は、生成されたコードから型引数の数を削除しますが、この処理は、コンパイラに固有の処理です。型引数の数は入れ子にされた型名内でも検出されることに注意してください。この場合、正符号 ("+") が後に続きます。
![]() |
---|
ジェネリック CodeTypeReference を作成する場合、型引数を CodeTypeReference オブジェクトとして指定するか、または Type を受け取るコンストラクタを使用することをお勧めします。文字列から CodeTypeReference を作成するコンストラクタを使用した場合、発見できない型引数エラーが発生する可能性があります。 |

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- CodeTypeReference.BaseType プロパティのページへのリンク