CodeTypeReference.BaseType Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan atau mengatur nama jenis yang dirujuk.
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
Nilai Properti
Nama jenis yang dirujuk.
Keterangan
Properti ini berisi nama jenis kecuali itu adalah jenis array, dalam hal ini adalah jenis elemen array.
Catatan
Nama properti mungkin menyesatkan. Properti ini hanya berisi nama jenis dengan hiasan array atau argumen jenis generik yang dihapus, bukan tipe dasar atau induk seperti yang diharapkan. Misalnya, BaseType nilai untuk System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]]
adalah System.Collections.Generic.Dictionary`2
.
Representasi Jenis Generik
Informasi di bagian ini ditujukan untuk pengembang penyedia CodeDom dan hanya berlaku untuk bahasa yang mematuhi CLS. Nilai yang dikembalikan dapat berisi jenis generik. Jenis generik diformat dengan nama jenis diikuti dengan aksen kuburan ("'") diikuti dengan hitungan argumen jenis generik. Argumen jenis generik dapat ditemukan di yang CodeTypeReferenceCollection dikembalikan oleh TypeArguments properti . Nilai yang dikembalikan oleh BaseType dan yang terkait TypeArguments berisi konten yang sama dengan nilai jenis yang dikembalikan oleh pantulan.
Misalnya, yang dibangun Dictionary<TKey,TValue> di mana K
adalah string dan V
merupakan List<T> konstruksi bilangan bulat diwakili oleh refleksi sebagai berikut (dengan informasi perakitan dihapus):
System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]]
Mengurai properti secara BaseType rekursif dari CodeTypeReference untuk Dictionary<TKey,TValue> menghasilkan string yang sama dengan representasi pantulan di atas:
Properti BaseType untuk induk CodeTypeReference mengembalikan hal berikut:
System.Collections.Generic.Dictionary`2
Properti BaseType untuk objek pertama CodeTypeReference dalam TypeArguments koleksi mengembalikan hal berikut:
System.String
Properti BaseType untuk objek kedua CodeTypeReference dalam TypeArguments koleksi mengembalikan hal berikut:
System.Collections.Generic.List`1
Properti TypeArguments dalam CodeTypeReference objek untuk
System.Collections.Generic.List`1
mengembalikan hal berikut:System.Int32
Jumlah argumen jenis harus digunakan saat mengurai nilai terkait TypeArguments . Praktik umumnya adalah menghapus jumlah argumen jenis dari kode yang dihasilkan, tetapi praktiknya spesifik untuk pengkompilasi. Penting untuk dicatat bahwa jumlah argumen jenis dapat ditemukan dalam nama jenis berlapis, dalam hal ini diikuti dengan tanda plus ("+").
Catatan
Saat membuat generik CodeTypeReference, praktik yang disarankan adalah menentukan argumen jenis sebagai CodeTypeReference objek atau menggunakan konstruktor yang mengambil Type. Penggunaan konstruktor yang membuat CodeTypeReference dari string dapat menyebabkan kesalahan type-argument yang tidak dapat dipulihkan.