C # MVC: вернуть ViewModel или модель класса? - PullRequest
4 голосов
/ 08 июня 2009

Допустим, у меня есть представление, в котором в настоящее время я использую только информацию о модели из своего класса "Пользователь".

Должен ли я по-прежнему создавать дополнительную оболочку viewmodel или напрямую возвращать экземпляр класса пользователя в представление?

Непосредственно возвращаемый объект:

return View(user);

Обернут в объект ViewModel:

return View(new UserViewModel(user));

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

Спасибо за вашу помощь!

Ответы [ 2 ]

5 голосов
/ 08 июня 2009

Нет, вам не следует использовать View Model, если вы используете информацию только из Model. Это простая ситуация. Создайте строго типизированный вид и используйте модель напрямую.

2 голосов
/ 08 июня 2009

Я склонен использовать модель предметной области, пока мне не понадобится модель представления. Зачем? Использование модели предметной области быстрее. Затем, когда модель предметной области больше не покрывает мои потребности, я выполняю рефакторинг, добавляя то, что мне нужно, там, где это необходимо. Я большой поклонник "заставить его работать быстро и энергично проводить рефакторинг".

Это также относится к разделению моделей на несколько пользовательских элементов управления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...