【发布时间】:2009-12-11 11:45:11
【问题描述】:
我尝试捕获不同类型的错误:
catch (XmlException XmlExp)
{
return false;
}
catch (XmlSchemaException XmlSchExp)
{
return false;
}
catch (Exception GenExp)
{
throw GenExp;
}
请注意,XMLException XMLExp 已声明但从未使用过。是否可以在不声明局部变量的情况下捕获 XMLException?
这是有效的代码吗:
catch (XmlException)
{
return false;
}
【问题讨论】:
-
您是否曾尝试删除
XmlSchExp文本(仅此而已)?尝试。 :) -
说真的,试试吧!它比发布问题花费的时间更少。另外,只需使用
throw;而不是throw GenExp;是您的意图是重新抛出异常 -
在 catch 块中抛出异常也是一个坏主意:
throw GenExp;。您将丢失堆栈跟踪。只需写“投掷”;重新抛出捕获的异常。
标签: c#