private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
{
if (!System.Diagnostics.Debugger.IsAttached)
{
e.Handled = true;
Deployment.Current.Dispatcher.BeginInvoke(delegate { ReportErrorToDOM(e); });
}
}
我有一个解决方案,其中 silverlight 应用程序(调用 Web 服务(托管在 asp.net 应用程序中。
如果应用程序中有任何未处理的异常,我想获得尽可能多的详细信息,例如异常消息、内部异常详细信息、发生异常的文件、正在调用的方法......就像我在捕获块中得到的一样。
那么从上面的Application_UnhandledException事件中,我如何从 ApplicationUnhandledExceptionEventArgs e 获取此信息?
e.ExceptionObject.ToString()
比向导中的默认值更好,因为它还为您提供了嵌套的异常名称、消息和堆栈跟踪。
方法名称包含在堆栈跟踪中。
但是,文件名和行号无法通过我所知道的任何方法从 Silverlight 检索,即使在使用提升的权限运行时也是如此。