我的应用程序是.NET 4.5,我有一个事件处理程序,记录所有未观察到的任务异常错误。观察到的任务异常调用TaskScheduler.UnobservedTaskException
TaskScheduler.UnobservedTaskException += (sender, e) => e.Exception.Handle(ex =>
{
logger.Error(e.Exception);
return false;
});
我返回false,什么关闭应用程序。模拟.NET 4.0行为。
我的问题是,为什么此代码调用该事件,并因此导致我的应用程序崩溃,如果我观察结果?
try
{
var resultado = httpClient.GetAsync('http://.....').Result;
}
catch (Exception ex)
{
logger.Error(ex);
}
UPDATE:一些调试后,我弄清楚,我有另外的任务时,我didn't叫。结果,并导致该问题。
您正在阅读的活动有误。这并不意味着“一个未被发现的任务的例外”,而是“未被发现的任务的例外”。 –
我编辑了我的问题。我实际上是“获取”例外,登录。当我调用Result时,它应该同步抛出一个异常 –
我冒昧地设置了一个更精确的标题。希望你不介意。 – usr