У меня есть существующее приложение CRUD, которому было поручено реализовать «захоронение гробниц». Мне нужен способ разрешить пользователю перекачивать заданную страницу данных обратно в предыдущее состояние.Реализовать откат данных в существующем приложении CRUD
Скажите, что у меня есть имя, фамилия и номер социального страхования на странице этого приложения. Пользователь A обновляет поле «Фамилия». Позже Пользователь B замечает, что новое Фамилия отличается и хочет видеть, кто изменил его и откатил, если это необходимо.
Я не согласен с этим, поэтому, если мне не хватает или неправильно использовать некоторые термины, простите меня.
Это приложение имеет бэкэнд MS SQL, а DAL - в основном SPROCS. Прямо сейчас нет никакого архивирования или захоронения гробниц, о которых можно было бы говорить.
Я думал просто создать таблицу для каждой существующей таблицы, называемой tblPerson -> tblPersonTombstone, а затем часть назад будет читать из этой таблицы. К сожалению, оригинальные дизайнеры БД разработали его таким образом, что одна страница в приложении может содержать информацию из 2 или 3 разных таблиц. Таким образом, я бы предположил, мне нужен более основанный на транзакциях подход.
Любые указания или указатели будут благодарны. Думаю ли я на правильном пути? Может быть, я слишком усложняю это? Как другие это сделали?
Я вижу этот пост How to implement ‘undo’ operation in .net windows application?, а также этот New CodePlex project: a simple Undo/Redo framework, но я убежден, что ни одна из них не соответствует моей реальной ситуации. Я не хочу, чтобы пользователи нажимали ctl + z. Мне нужно, чтобы они перевернули всю страницу назад в предыдущее состояние. Если я неправильно понимаю использование этих двух примеров, то, пожалуйста, скажите это.
Спасибо за внимание.
Аудит? Благодаря! Иногда знание правильного ключевого слова - это половина битвы. +1 –
Добро пожаловать! –
Похоже, они хотят, чтобы откаты были ручным процессом, поэтому аудиторский след - это все, что мне нужно. Похоже, я буду исследовать # 2. Есть ли способ, который вы могли бы разработать на своем плагине ORM? Я использую Linq To SQL в качестве своего ORM и буду признателен за руководство. –