2011-02-02 126 views
5

我有一個類看起來很喜歡這樣的:比較兩種

object value; 
Type type; 

當我創建我設置類型爲對象類型的對象。

如何將此類型與另一種類型進行比較?

。例如,如果類型爲String

type.Equals(String) 

type == String 

不起作用。

回答

11

在這種情況下,您將您的Type實例與typeof(T)的結果進行比較,其中T是您想要比較的類型。

bool objectIsString = myType == typeof(string); 
1

以及這應該工作

bool isSameType = (value != null && value.GetType() == type); 
0

Type.Equals()需要你傳遞一個類型。因此,將字符串變爲一種類型:

type.Equals(GetType(string)) 
0
if(typeitem is string) 
{ 
    // Your Code 
}