我有以下的C#代码:异常处理c#没有像我期望的那样行事 - 为什么?
try
{
response = this.writeDataToChannel(writeRequest);
if (response.Failures != null)
{
Console.WriteLine(response.Failures.First().cause);
}
}
catch (TimeoutException te)
{
Console.Error.WriteLine(te.Message);
}
当我运行在发布此代码,并推动大量的数据到服务,VS2010停止与一个TimeoutException了“writeDataToChannel”行。我的catch块不应该捕获异常,只是在超时发生时才打印它?
“writeDataToChannel”代码是从WSDL生成的,这些写操作一直运行,直到我将大量数据推送到webservice,所以我认为我的请求没有问题。
这不是一个命名空间问题,在这两种情况下它都是一个System.TimeoutException。
您是否在调试该项目? – rsbarro
你正在谈论调试器。调试器中的_course_运行代码的工作方式不同!调试器给你一个机会来看看异常。按F5键,您的catch块将会到达。 –
这是在Web服务的上下文中运行吗? – jrummell