实现XML的自动保存功能

时间:2011-12-01 08:31:40

标签: c# xml autosave

为了给我的应用程序提供自动保存功能,我正在寻找可以优化3个以下要求的最佳实现:

  • 安全:为了降低数据损坏的风险
  • 用户友好:用户不是计算机专家,因此解决方案必须直观且友好
  • 快速开发:我不想花费数周时间来完成此实现

我有三个不符合3个标准的解决方案,我正在寻找替代方案:

  • 创建一个简单的影子文件,以便在应用程序崩溃或PC意外关闭时应用程序尝试恢复它
  • 以与上述相同的方式工作,但在不同的时间将多个版本的文件存储在临时文件夹中
  • 实现一个真正的回滚系统,通过在temp文件夹中保留修改的跟踪,即使重新启动应用程序也可以扩展undo / redo功能。

有人有什么建议吗?

1 个答案:

答案 0 :(得分:2)

对于自动保存,我只需要一个后台运行线程,它将默认运行Save()方法(无弹出窗口)到临时位置(AppData系统文件夹)。您应该为每个会话保留一个单独的文件,以便始终可以提供返回先前崩溃的会话。在正常退出时,您应该删除该文件以指示会话已成功完成。

我甚至会为每个会话保留2个文件,每个文件都有一个备用保存,这样如果在自动保存期间发生崩溃,它就不会破坏以前的自动保存。