2012-02-22 68 views
0

我正在使用异步ctp并且有一个在后台运行的任务。它运行良好,但运行时应用程序异常时会抛出异常。异常与数据库上下文为空有关。当应用程序墓碑时,优雅地处理后台任务

的文档说:

当应用程序逻辑删除,底层数据库连接 被关闭。要在逻辑删除后返回到之前的状态, 应用程序需要重做它在执行逻辑删除之前执行的任何查询。

我尝试过使用cancellationtokesource,但这似乎不工作,因为连接已关闭。任何想法如何处理这样的事情?

回答

0

我们对此也有一些问题,但移动应用程序的一般体系结构倾向于面向服务,所以大多数人不必担心数据库连接。处理墓碑通常是很容易出错的 - 这个区域是我项目中多产的bug生成器之一。

作为用户体验,在从墓碑醒来后而不是最后一次屏幕后返回到开始屏幕是可以的(不是很好)。否则,您可以缓存已有的数据 - using the IsolatedStorage并尝试重新执行屏幕。

+0

是的,我看到崩溃的数字,但没有投诉,所以我假设他们开始的过程和退出,然后它的墓碑和崩溃。在这种情况下,虽然我认为这是造成或可能导致数据库损坏问题。 – 2012-02-22 19:24:40

相关问题