Я понимаю, что временные таблицы предназначены для того, чтобы дать вам представление данных на определенный момент времени. Я использую временные таблицы для целей аудита. У меня есть следующая временная таблица.
Предположим, что это текущее состояние временной таблицы:
ID RoleID UserID ModifiedBy
------------------------------------------
1 11 1001 foo@example.com
2 22 1001 foo@example.com
3 33 1002 bar@example.com
4 11 1003 foo@example.com
У меня есть веб-приложение, использующее EF Core. Мой код EF всегда устанавливает ModifiedBy
для текущего пользователя. Я вошел в приложение как bar@example.com
и удалил запись с идентификатором 2. SQL Сервер автоматически вставит удаленную запись в таблицу истории, как и ожидалось, и сохранит ModifiedBy как foo@example.com
, поскольку это было значение момента времени ModifiedBy column.
Однако теперь система не знает, кто удалил строку. В этом сценарии bar@example.com
тот, кто действительно удалил строку. Как мне захватить пользователя, который удалил запись? Какие у меня есть варианты?