c# – Windows Phone 8.1应用程序崩溃时不调试异步等待

前端之家收集整理的这篇文章主要介绍了c# – Windows Phone 8.1应用程序崩溃时不调试异步等待前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用 Windows Phone 8.1应用程序.我在这个项目大约一个月了,到目前为止我已经看到了很少甚至没有问题.

我决定对应用程序进行一些测试,而不通过VS 2013调试器进行测试.现在,由于某种原因,应用程序在它进入第一个屏幕之前崩溃.我没有任何例外或消息(我正在使用Raygun进行错误记录).

我正在使用异步方法(一些异步void,其他异步任务),但所有这些工作在调试时.

主要的帮助,是得到某种错误信息.我已经减少了对代码段的评论,但最终这让我无处可寻,因为我觉得我发现了这个问题,我进一步陷入了代码中.

有一点,我发现调用一个问题:ListView.UpdateLayout().我评论了这一点,应用程序将正常运行没有崩溃.然后我再次对一些代码进行了评论,现在再次崩溃.

如果有人知道如何从手机中获取例外,或者有人曾经遇到过这个问题,任何帮助都将不胜感激.我可以提供所需的任何进一步信息.

更新:
我想我把这个问题缩小到了sqlite.NET.我正在使用sqlite.Net for WinRT以及一个名为sqliteNetExtensions的扩展.特别的声明是

DataContext.Context.Connection.Table<Message>().Where(m => m.ChannelID == channelID && m.ChannelID.Contains("C")).ToList();

如果我评论这个,应用程序运行没有问题.这个LINQ语句最多返回100条记录.我不会认为100条记录的SELECT语句可能导致应用程序崩溃,但似乎是罪魁祸首.关于如何优化sqlite.NET的任何想法?

更新2:
终于搞定了!根本不是sqlite.这根本不是我的代码.这是我的手机我正在运行诺基亚Lumia图标.几个星期之后,我已经安装了Rudy Huyn的Lockscreen Beta.当我卸载它时,它引起了一些问题,但它与我的应用程序无关.今天,我的业务合作伙伴在手机上安装了我的应用程序,他拥有相同的型号手机.该应用程序的速度大约是50倍,没有崩溃.我从工厂恢复了我的手机,而且看起来完美无缺.所以,专业提示:不要安装LOCKSCREEN BETA由RUDY HUYN!

解决方法

除此之外,我会花时间确保您始终避免使用异步无效.有充分的记录,异步空洞通常是麻烦的秘诀.

关于here的缺点,有一篇很好的文章

猜你在找的C#相关文章