Я видел это повсюду в SO, блогах и книгах, где авторы говорят, что вы добавляете ViewModel, специфичные для вашего View, в ваши проекты Model как оболочки для ваших базовых объектов модели.Идея состоит в том, чтобы сделать его очень простым и целевым, когда вы собираетесь делать привязку модели к представлению.Вот хороший пример: Отображение и привязка раскрывающихся списков с использованием ASP.NET MVC 2 EditorFor
Однако меня немного раздражает, что сейчас есть ссылки на System.Web.Mvc вмоя модель, которую в противном случае можно было бы использовать для нескольких выходов (например, WCF API, Silverlight и т. д.), но теперь у меня есть конкретные ссылки на библиотеки MVC, которые потребуются для сборки проекта моей модели.
Myвопрос: нарушает ли это паттерны MVC, когда мы начинаем добавлять IEnumerable<SelectListItem>
в наши классы моделей?И существует ли жизнеспособный альтернативный слой для перемещения и как, например, Контроллер?
Любые мысли или комментарии приветствуются.