2010-11-04 25 views
1

我無法得到正確的語法。C#:如何檢查兩個實例的類型

說我有兩個實例化對象,obj1和obj2。

現在,我要檢查兩件事情:

1)是OBJ1的類型是OBJ 2的類型的

2)是obj1的類型是相同作爲obj2的類型。

我敢肯定,我可以實現1)只是在做

obj1.GetType().IsSubclassOf(obj2.GetType()) 

但將上述返回true,如果OBJ1和OBJ2是同一類型的?

回答

3

有疑問時,諮詢the documentation(重點煤礦):

返回值true如果由c參數所表示的Type和當前Type表示類,並且由當前Type表示的類派生自c所代表的類;否則,false

如果c和當前Type表示相同的類,此方法還返回false

如果要檢查兩個類型相同,你可以比較它們的Type S:

obj1.GetType() == obj2.GetType() 
+0

Doh!應該查看它。即使我這樣做了,我也會有另外一個關於測試類型相等性的問題,您在這個回覆中已經回答了我。謝謝! – Ben 2010-11-04 04:52:27

0
obj2.GetType().IsAssignableFrom(obj1.GetType()) 
相關問題