У меня есть веб-приложение ASP.NET MVC, и мне нужно отследить некоторые действия пользователя и сохранить их в базе данных Sql Server. Особые требования:
- Сохранение идентификатора пользователя
- Операции сохранения, такие как создание / обновление / удаление
- Сохранение контроллера и действия, которое было выполнено
- Сохранять изменения - значения до и после обновления (для определенных свойств)
- Нет триггеров и других специфических для БД решений
- Только выбранные действия и сущности.
Я пробовал следующее:
- Украсить действия с помощью атрибута фильтра действий, а затем сохранить значения из запроса, но это слишком общий характер, и что я не могупосмотрите любой способ получить предыдущие значения (без другого запроса к БД)
- Выполнение некоторой операции регистрации в действии контроллера, но мне нужно регистрировать изменения только после успешной операции с БД (после SaveChanges). Я не уверен, как получить предыдущие значения из объекта, который хранится.
Могу ли я что-нибудь сделать с решениями, приведенными выше, или есть другие идеи?