2010-06-11 3 views
3

У меня есть требование отслеживать, какие аутентифицированные пользователи изменяются в отношении данных при входе в систему. Мне не нужно отслеживать, на каких страницах они смотрят, хотя это может быть очень полезно в будущем ,Отслеживание пользовательских изменений в ASP.NET MVC

Я думал о сохранении User Guid, но это кажется очень неуклюжим. Мне нужно делать простые вещи, такие как старое значение и новое значение. Я использую Entity Framework, есть ли там поддержка там с хранимыми процедурами в SQL Server?

Существуют ли другие методы/рекомендации?

ответ

3

Это не вопрос ASP.NET MVC. Вы можете реализовать аудит в своем EF-слое. Here - быстрый образец, который я только что нашел.

Я обнаружил, что трюк с аудитом понимает, почему вам нужна поддержка. Часто пользователи скажут, что им нужен аудит, но на самом деле они просто хотят узнать последнюю дату/пользователя редактирования. Вы должны знать, нужны ли им возможности отмены, проверки безопасности и т. Д. Является ли это для соответствия нормативным требованиям или для администратора базы данных, чтобы исправить ошибки пользователя? Часто бывает проще удалить и повторно ввести данные, чем вручную отредактировать БД. Кроме того, как бы откат данных влияет на другие проблемы отчетности? Если вы изменили данные и повторно запустили отчет, он не будет соответствовать оригиналу. Если это проблема, вам нужно сохранить исходные результаты или создать модель поиска событий. Не весело.

Вторая сложная вещь, касающаяся аудита, заключается в том, как отображать данные. Иногда SQL-запросы приемлемы, в других случаях пользователям требуется полная история в пользовательском интерфейсе. Мое предложение - рассмотреть бизнес-потребности вашего дела и провести соответствующие исследования.

Кроме того, если вам необходимо провести аудит изменений отношений в базе данных, нет простого решения. Удачи!

Смежные вопросы