我是使用 MvvmCross 的 Wpf 新手。我已经为 WindowsPhone 应用程序使用 MvvmCross 一段时间了,异常处理并不难,因为我可以使用默认的 App.xaml.cs 及其UnhandledException
事件。但是,在 WPF 项目中,App.xaml.cs 文件是空的,因此每当我的一个 ViewModel 遇到异常时,它就会崩溃,因为我不知道在哪里处理异常。
我怎样才能解决这个问题?
您应该能够以与 Windows Phone 应用程序类似的方式使用 UnhandledException。
正如 Stuart for WPF here所解释的,在“修改 App.xaml.cs 以使用设置”下,您应该在 App.xaml.cs 中有一个 DoSetup 方法。
然后,您可以添加如下事件处理程序:
DispatcherUnhandledException += OnDispatcherUnhandledException;
AppDomain.CurrentDomain.UnhandledException += CurrentDomainOnUnhandledException;
TaskScheduler.UnobservedTaskException += TaskSchedulerOnUnobservedTaskException;