【发布时间】:2013-03-07 01:57:09
【问题描述】:
我正在尝试将错误记录到文件中,但是当错误发生时我似乎无法运行 catch 块。下面是代码示例:
try
{
cmd.ExecuteNonQuery();
}
catch (MySQLException ex)
{
//run some logging code
}
finally
{
//clean up the resources
}
问题是当出现异常时,我从内置的网络服务器中得到错误,这是一个未处理的异常。当我调试代码在异常处停止然后继续到 finally 块。有人可以在这里指出我正确的方向吗?
【问题讨论】:
-
也许它是不同类型的异常而不是要求捕获的异常?
-
异常是
MySQLException吗?或者您是否尝试在导致另一个异常的finally块中执行某些操作? -
@pst 说了什么。将其包装在另一个
try...catch中,并在调试时检查实际异常.. -
我已经编辑了你的标题。请参阅“Should questions include “tags” in their titles?”,其中的共识是“不,他们不应该”。
-
更好的做法是让 no 捕获块:如果您不知道抛出了什么,就不要捕获它。