2010-04-19 6 views
6

У меня есть груз объектов ADO.NET в моем проекте MVC. Я собирался использовать эти объекты непосредственно из своих представлений/контроллеров ... однако, я думаю, что лучше всего использовать ViewModels, которые более точно отражают то, что требуется View.ASP.NET MVC ViewModel Auto Generation

Я ищу способ, которым я могу автоматически генерировать ViewModel из существующего Entity, то есть автоматически генерировать оболочку или шаблон адаптера из существующего элемента ... Или шаблон T4, который будет циклически проходить через публичные свойства объекта и свойства вывода для ViewModel ... затем я могу удалить свойства, которые мне не нужны, или создать модели совокупного представления и т. д.

Я не могу найти нигде путь к автогенерации оболочка или класс шаблона адаптера из существующего типа?

Идея заключается во время выполнения, используйте AutoMapper для отображения между ViewModel и Entity.

благодарит

ответ

2

Вы можете использовать AutoMapper конвертировать из модели домена в модели представления. Есть great post from Jimmy Bogard, объясняющий, как вы могли бы интегрировать это в действия вашего контроллера.

+1

Привет, конечно - AutoMapper отлично подходит для этого ... но я хотел бы найти способ создания ViewModel из объектов. AutoMapper решает проблему скуки свойств отображения из моделей viewmodels в модели домена, но я хотел бы вырезать скуку дублирования вручную 100s свойств в viewmodels. – krisdyson

+0

@boom DRY http://ru.wikipedia.org/wiki/Don%27t_repeat_yourself – mxmissile

1

http://weblogs.asp.net/rajbk/archive/2010/05/04/a-basic-t4-template-for-generating-model-metadata-in-asp-net-mvc2.aspx

Это может помочь. Это фактически для генерации метаданных для существующих типов сущностей. Но вы можете использовать его для создания чистых моделей просмотра с аннотациями данных. Может быть, с небольшой модификацией.