C# 实现XML的自动保存功能

C# 实现XML的自动保存功能,c#,xml,autosave,C#,Xml,Autosave,为了使我的应用程序具有自动保存功能,我正在研究优化以下3个要求的最佳实现: 安全性:为了降低数据损坏的风险 用户友好:用户不是计算机专家,因此解决方案必须直观友好 快速开发:我不想花费数周的时间在这个实现上 我有三个不符合3个标准的解决方案,我正在寻找替代方案: 创建一个简单的卷影文件,以便在应用程序崩溃或PC意外关机时,应用程序尝试恢复它 工作方式与上述相同,但在不同时间将文件的多个版本存储在临时文件夹中 实现一个真正的回滚系统,通过在临时文件夹中保留修改的跟踪,即使应用程序重新启动,也

为了使我的应用程序具有自动保存功能,我正在研究优化以下3个要求的最佳实现:

  • 安全性:为了降低数据损坏的风险
  • 用户友好:用户不是计算机专家,因此解决方案必须直观友好
  • 快速开发:我不想花费数周的时间在这个实现上
我有三个不符合3个标准的解决方案,我正在寻找替代方案:

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

有人有什么建议吗?

对于autosave,我只需要有一个后台运行的线程,它将以静默方式运行Save()方法(没有弹出窗口)到临时位置(AppData系统文件夹)。您可能应该为每个会话保留一个单独的文件,这样您就可以随时提供返回到以前崩溃的会话。在正常退出时,您应该删除该文件以指示会话已成功完成

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