Это не вопрос ASP.NET MVC. Вы можете реализовать аудит в своем EF-слое. Here - быстрый образец, который я только что нашел.
Я обнаружил, что трюк с аудитом понимает, почему вам нужна поддержка. Часто пользователи скажут, что им нужен аудит, но на самом деле они просто хотят узнать последнюю дату/пользователя редактирования. Вы должны знать, нужны ли им возможности отмены, проверки безопасности и т. Д. Является ли это для соответствия нормативным требованиям или для администратора базы данных, чтобы исправить ошибки пользователя? Часто бывает проще удалить и повторно ввести данные, чем вручную отредактировать БД. Кроме того, как бы откат данных влияет на другие проблемы отчетности? Если вы изменили данные и повторно запустили отчет, он не будет соответствовать оригиналу. Если это проблема, вам нужно сохранить исходные результаты или создать модель поиска событий. Не весело.
Вторая сложная вещь, касающаяся аудита, заключается в том, как отображать данные. Иногда SQL-запросы приемлемы, в других случаях пользователям требуется полная история в пользовательском интерфейсе. Мое предложение - рассмотреть бизнес-потребности вашего дела и провести соответствующие исследования.
Кроме того, если вам необходимо провести аудит изменений отношений в базе данных, нет простого решения. Удачи!