在app墓碑上优雅地处理后台任务

时间:2012-02-22 19:00:46

标签: c# windows-phone-7 sql-server-ce async-ctp

我正在使用异步ctp,并且有一个在后台运行的任务。它运行良好但在运行时抛出异常并且应用程序被逻辑删除。该异常与数据库上下文为空有关。

文档说:

  

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

我尝试过使用canceltokesource,但这似乎不起作用,因为连接已经关闭。知道如何处理这样的事情吗?

1 个答案:

答案 0 :(得分:0)

我们也遇到了很多问题,但移动应用程序的一般架构往往是面向服务的,因此大多数人不必担心数据库连接。处理墓碑很容易出错 - 这个区域是我项目中多产的bug生成器之一。

从逻辑删除而不是最后一个屏幕唤醒后返回到开始屏幕的用户体验是可以的(不是很好)。否则,您可以缓存已有的数据 - using the IsolatedStorage并尝试重做屏幕。