Pertanyaan cepat: bagaimana cara membandingkan tipe Type (pun tidak dimaksudkan) dengan tipe lain di C #? Maksudku, aku punya Type typeField
dan saya ingin tahu apakah itu System.String
, System.DateTime
, dll, tapi typeField.Equals(System.String)
tidak bekerja.
Ada petunjuk?
Anda dapat membandingkan untuk tipe yang sama persis menggunakan:
typeof mengembalikan objek Type dari kelas yang diberikan.
Tetapi jika Anda memiliki tipe B, yang mewarisi dari A, maka perbandingan ini salah. Dan Anda mencari IsAssignableFrom .
sumber
Jika instance Anda adalah
Type
:tetapi jika instance Anda adalah
object
dan bukanType
penggunaan,as
operator:ini memiliki keuntungan untuk mengkonversi
value
hanya sekali ke tipe yang ditentukan.sumber
http://msdn.microsoft.com/en-us/library/system.type.gettype.aspx
yang akan memberi Anda sesuatu seperti
atau
http://msdn.microsoft.com/en-us/library/58918ffs(v=vs.71).aspx
sumber