AutoMapper кажется приемлемым (многими) решением.
И я бы сказал, что в мире MVC нет такого понятия, как «готовое решение» - в отличие от Ruby on Rails, например. Framework очень расширяемый, но в то же время очень тонкий, поэтому во многих областях вы должны придумать свой собственный «самоуверенный» способ действий. Просто пример вашей ситуации, лично у меня есть мои модели зрения:
- Объявление статического ConfigureAutoMapper ()
- Имеется либо необязательный метод Setup (realmodel), либо необязательный конструктор
- ViewModel (destinationViewModelType) используется для действий и выполняет автоматическое преобразование - создание модели представления, вызов установки или конструктора или вызов AutoMapper
- Карты ViewModel создаются с предопределенным ConstructUsing, в котором для создания экземпляров используется контейнер IoC, чтобы модели представлений при необходимости получали свои зависимости IoC
Ничего из вышеперечисленного не существует в MVC из коробки. Я бы сказал, что MVC поддерживает только использование ViewData "из коробки".