Answers:
您可以使用它的is 运营商。然后可以通过编写以下命令检查对象是否为特定类型:
if (myObject is string)
{
DoSomething()
}
您可以使用以下命令比较完全相同的类型:
class A {
}
var a = new A();
var typeOfa = a.GetType();
if (typeOfa == typeof(A)) {
}
typeof从给定的类返回Type对象。
但是,如果您具有从A继承的类型B,则此比较是错误的。您正在寻找IsAssignableFrom。
class B : A {
}
var b = new B();
var typeOfb = b.GetType();
if (typeOfb == typeof(A)) { // false
}
if (typeof(A).IsAssignableFrom(typeOfb)) { // true
}
http://msdn.microsoft.com/zh-CN/library/system.type.gettype.aspx
Console.WriteLine("typeField is a {0}", typeField.GetType());
这会给你类似的东西
typeField is a String
typeField is a DateTime
要么
http://msdn.microsoft.com/zh-CN/library/58918ffs(v=vs.71).aspx