我有以下代码。我封闭一个try块和“尝试”捕捉异常:为什么我的异常不被捕获?
try
{
var response = query.Execute() as QueryOperationResponse;
}
catch (System.Net.WebException s)
{
var se = e;
se = se + "aa";
}
catch (Exception e)
{
var a = e;
a = a + "ab";
}
当query.Execute行执行它产生一个异常和VS2010停止上线开始捕捞(System.Net并给出以下:
System.Data.Services.Client.DataServiceQueryException was unhandled by user code
Message=An error occurred while processing this request.
Source=System.Data.Services.Client
StackTrace:
at System.Data.Services.Client.DataServiceRequest.Execute[TElement](DataServiceContext context, QueryComponents queryComponents)
at System.Data.Services.Client.DataServiceQuery`1.Execute()
当我步骤通过我希望它去代码“VAR SE = 2;”或“VAR A = E”然而,当我步骤通过与F11之后的下一行是一个跳转完全在代码块/方法之外
为什么异常不会落入其中一个catch桶?我完全困惑。
你重新抛出异常的第二个catch块。 – Lee 2011-12-17 14:55:40
这是优化吗?无论如何,代码将注定会被抛出。 – 2011-12-17 14:57:32
这里的代码只是测试代码。我期待并试图测试它是否会进入捕获阶段。我如何测试,仍然不确定它为什么不去那里。 – 2011-12-17 14:59:41