我的班级看起来很像这样:
object value;
Type type;
当我创建对象时,我将类型设置为Object的类型。
如何将此类型与其他类型进行比较?
例如,如果类型为String
:
type.Equals(String)
和
type == String
不起作用。
答案 0 :(得分:14)
在此上下文中,您将Type
实例与typeof(T)
的结果进行比较,其中T
是您要比较的类型。
bool objectIsString = myType == typeof(string);
答案 1 :(得分:3)
检查这可能会对您有所帮助。使用 Object.GetType()
http://msdn.microsoft.com/en-us/library/system.object.gettype.aspx
答案 2 :(得分:1)
这应该可行
bool isSameType = (value != null && value.GetType() == type);
答案 3 :(得分:0)
Type.Equals()
要求您也传递一个Type。因此,将字符串转换为类型:
type.Equals(GetType(string))
答案 4 :(得分:0)
if(typeitem is string)
{
// Your Code
}