1

在我的 Windows Phone 8 解决方案中,当返回主全景视图时,有时会出现看似随机的空引用异常。

但是,尽管进行了 Debug 编译,但我根本没有得到任何关于出了什么问题的提示。为什么 Source 和 StackTrace 为空?有什么办法可以查出是什么东西扔的吗?

在此处输入图像描述

编辑:抛出 System.NullReferenceException 时,异常设置为中断。它不会闯入此异常的调试器。对于其他异常,它确实可以正常工作。

EDIT2:仅禁用我的代码后,我在调用堆栈窗口中得到两个堆栈帧:

MyApp.DLL!MyApp.Application_UnhandledException(object sender, System.Windows.ApplicationUnhandledExceptionEventArgs e) Line 179 C#
System.Windows.ni.dll!MS.Internal.Error.CallApplicationUEHandler(System.Exception e)    Unknown
System.Windows.ni.dll!MS.Internal.Error.CallAUEHandler(uint hr, out uint bIsHandled)    Unknown

异常对象获得了更多可见的字段和属性,但除了上面屏幕截图中显示的内容外,所有内容都是空的。

EDIT3:Intellitrace 和回溯不是一个选项,因为它不适用于 silverlight 和 windows phone。

我已经使用 postsharp 添加了对所有代码的跟踪,不幸的是,它并不是源于我的任何代码。最后发生的事情是我成功退出了 LongListSelector_ItemRealized。

4

1 回答 1

2

I'm not sure why the stacktrace is empty. Though, to debug your issue, you can gather more information by enabling Visual Studio to break on any first-chance exception (Control + Alt + e, and check the box in front of "Common Language Runtime Exceptions). Then when the exception occurs, look in the "call stack" window.

于 2013-04-29T09:37:22.673 回答