По моему опыту, модели из базы данных редко совпадают с используемыми на веб-страницах. Вам всегда нужны какие-то изменения. Отсюда использование ViewModel
с. Другим положительным моментом является то, что все веб-страницы, которые используют вашу ViewModel, не сломаются, если изменить модель объекта.
Что касается безопасности, если у вас есть public ActionResult Save(MyEntityModel model)
, это может привести к бреши в безопасности, поскольку пользователь может выяснить, как публиковать значения в свойствах, которые не следует изменять (например, Role
, Status
, * 1007). * или что угодно).
Вместо этого ознакомьтесь с картографом (например, automapper ) и поместите атрибуты в модель представления.