检查2种类型是否相同

时间:2014-07-25 01:54:42

标签: c# types comparison windows-phone-8.1

我有一个未知类型的对象。我试图看看它是否属于特定类型。我试过了:

obj.GetType() == typeof(Object)

obj.GetType().ToString().Equals(typeof(Object).ToString())

但它们都不起作用。

如何查看对象是否属于特定类型?我需要找出它是否是确切类型,而不是该类型的超类/子类。

在Windows Phone 8.1中,我试图查看发件人的发送类。

1 个答案:

答案 0 :(得分:5)

你非常接近。

如果你想看一个对象实例是否是Widget类型,你可以这样检查:

 if (thisObj.GetType() == typeof(Widget))

对象必须正好您正在检查的类。如果你正在寻找任何后代子类型,你可以在语法上更容易使用:

 if (thisObj is Widget)

(当你试图弄清楚事件发件人是谁时,第二个结构可能更有用)