我很好奇如何在 C# 中获取装箱对象的类型。这是一个例子:
try{
...
}catch(Exception ex){
//get the specific type of exception
}
如你所见,Exception的子类的任何实例都会被捕获,现在你如何获取具体的类型?
请注意,以上只是一个例子,我不会那样使用它,所以请不要建议捕获特定的异常。
这是另一个例子:
Person person = new Person("John"); 对象 obj = 人;//盒子
现在如何从 obj
获取类型 Person
?
最佳答案
你可以这样做的方法:
答:使用GetType()
Type type = ex.GetType()
B:使用是
。
if (ex is FileNotFoundException)
{
}
(请注意,如果 ex
是从 FileNoteFoundException
派生的,上面的测试也会返回 true。)
C:如果你需要关于类型的额外信息,你可以使用反射。
ex.GetType().GetProperty("PropName"); // Etc.
关于c# - 在 C# 中确定装箱对象的类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33383938/