Реализовать функцию автосохранения XML - PullRequest
1 голос
/ 01 декабря 2011

Чтобы дать моему приложению функцию автосохранения, я ищу наилучшую реализацию, которая оптимизировала бы 3 следующих требования:

  • безопасность: чтобы снизить риск повреждения данных
  • дружественный к пользователю: пользователь не является компьютерным экспертом, поэтому решение должно быть интуитивно понятным и дружественным
  • быстро развиваться: я не хочу тратить недели на эту реализацию никогда

У меня есть три решения, которые не соответствуют трем критериям, и я ищу альтернативу:

  • создание простого теневого файла, чтобы при сбое приложения или неожиданном завершении работы компьютера приложениепопытайтесь восстановить его
  • , работающий так же, как указано выше, но сохраняющий несколько версий файла в разное время во временной папке
  • реализует систему реального отката, позволяющую расширить функциональность отмены / возвратадаже если приложение будет перезапущено путем отслеживания изменений во временной папке.

У кого-нибудь есть что предложить?

1 Ответ

2 голосов
/ 01 декабря 2011

Для автосохранения у меня просто будет фоновый поток, который будет запускать ваш метод Save () без вывода сообщений (без всплывающих окон) во временную папку (системная папка AppData). Вероятно, вам следует хранить отдельный файл для каждого сеанса, чтобы вы всегда могли предложить вернуться к предыдущему аварийному сеансу. При обычном выходе вы должны удалить файл, чтобы указать, что сессия успешно завершена.

Я бы даже сохранил 2 файла для каждой сессии, поочередно сохраняя для каждого, чтобы в случае сбоя во время автосохранения он не повредил предыдущее автосохранение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...