Я так думаю.
Я создаю особые классы моделей представлений, которые представляют собой обмен информацией между браузером и сервером.Если состояние модели действительно, то я копирую значения или вызываю методы домена с этими значениями (для этого предназначена папка Models).Я никогда не помещаю специфичные для MVC атрибуты в мои доменные сущности.
Правило большого пальца, я храню свои сущности в отдельной сборке, которая ничего не знает о MVC.Методы действий MVC ... связыватель модели может сделать вам плохую шутку: D Если, например, у вас есть класс «Account», со свойством «IsAdmin», и вы выставляете эту сущность в форме регистрации, пользователь может попытатьсяпередайте произвольный параметр «IsAdmin = true» в строке GET или в полезной нагрузке POST, и механизм связывания модели MVC установит это свойство в вашей модели ... и ваш код, вероятно, сохранит эту информацию в базе данных.
Поэтому я считаю очень важным держать внимание на представлении моделей.
Я знаю, что со всеми этими "динамическими" вещами, такими как ViewBag, и позволяя вашим собственным сущностям LINQ быть параметрами в методах действия, все становится очень легко сделать ... но мы не должны упускать из виду безопасность иДля обеспечения безопасности мы должны быть уверены, что на наш домен может попасть только та информация, которую мы хотим.
Cheers.