у тебя ключевое слово - транзакция. медитируй над ним.
...
ну а так... на вскидку... ?
ну создаешь ты копии.. кстати, метка времени, хотя она и у файлов может быть адекватной..
ну допустим файлы-флаги-завершения этапа транзакции? на каждый этап!
... если все крешанулось, то по наличию одного или более флагов, уже строишь алгоритм полного или частичного отката
... я так думаю... раз уж ты не на бд, а на файлы оперся...
ps ну или временный лог транзакции... так сказать.. ну и все чистить по успешному завершению
pps
MVV,
в файловой системе NTFS есть встроенная поддержка транзакционного обновления
еще бы нарыть инфу об этом )))
- это белее чем реалистично, современные ФС (а NTFS точно) по сути специализированные СУБД
- подписываюсь!
- если кто нароет хотя бы на уровне winapi, подписываюсь допилить до шарпа.. ну мало ли... ну или поделитесь!!! )))
... хотя на отдельных файлах флагах-этапов транзакции.. скорее топорно, но надежно... по тому что топорно ;)))
... а еще и переносимо между ОС ))