Подход MVC, который вы должны всегда использовать, особенно для простых сайтов, он экономит ваше время и делает приложение более понятным.
Если вы пишете что-то больше двух страниц, вам нужно использовать шаблон MVVM (ростMVC), в этом случае вы избежите использования «частичных моделей» с ViewModels.
Модель должна содержать только бизнес-логику.
Будет лучше, если вы всегда будете использовать ViewModel (не модель) для возврата данных из представления и передачи их в представление, поскольку это обеспечивает некоторую безопасность.
Для упрощения процедуры копирования данных из моделей в ViewModels используйте такие вещи, как AutoMaper и EmitMapper.
ViewBag и ViewData, которые вы должны использовать только для дополнительных данных, таких как наборы элементов для DropDown, или для некоторых видов текста, таких как заголовок страницы.
Еще одно преимущество шаблона MVVM - лучшая тестируемость.Если вы пишете и поддерживаете действительно хороший сайт, вы можете написать тесты для некоторых ответственных частей кода.
Для получения более подробной информации вы можете посмотреть на Google - MVVM, ASP-MVC.
Если я что-то не такпонял в вашем вопросе или пропустите, напишите это в комментарии (ссылка «добавить комментарий»).