-1

我在 WPF 项目中创建了一些自定义异常,我很确定当它们被抛出时我没有捕获它们,但我的应用程序也没有崩溃。但是,异常记录在输出窗口中。

我的自定义异常源自System.Exception并且我已经检查了我的所有try{}catch{}语句是否捕获了我的自定义异常或System.Exception. 他们都没有这样做。我正在使用 Visual Studio 2010 并在 32 位机器上运行它,所以似乎是一个不同的问题。

4

1 回答 1

0

您可以为AppDomain.UnhandledException事件添加处理程序:

AppDomain.CurrentDomain.UnhandledException += App_UnhandledException;

public void App_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
    Exception exception = (Exception)e.ExceptionObject;
    Error error = new Error(exception, mainViewModel.StateManager.CurrentUser);        
    mainViewModel.AddError(error); 
}

Error是我用来在数据库中记录错误的自定义类。如果你在这个方法中设置一个断点,那么只要有任何未捕获的Exception对象被抛出,执行就会跳转到这里。

于 2013-08-15T15:26:28.593 回答