Таким образом, я использую ViewModels для передачи данных из/в веб-формы в моем приложении MVC, поскольку, как представляется, рекомендуется использовать то, что я прочитал.Asp.net MVC извлекает объект модели из ViewModel
Мой вопрос в том, что является нормальным подходом к отображению ViewModel в фактический домен?
Я предполагаю, что я, вероятно, следует добавить метод «GetObject» моим ViewModels поэтому у меня есть что-то вроде:
[AcceptVerbs(HttpVerbs.Post)]
public void CreatePerson(PersonViewModel model)
{
Person p = model.GetPerson();
_repository.Save(p);
}
Является ли это правильный подход? Кажется, я создаю для себя много ненужной работы, используя ViewModels таким образом.
I» я не уверен, что понимаю, или я думаю, что вам не хватает смысла. В любом случае я не подвергаю основной объект Person объекту до конца. Все данные передаются в/из front end в виде форматированных строковых данных в ViewModel (который создается из объекта Person). – fearofawhackplanet
Ahh yea, вы можете взять абстракцию между View и Model слишком далеко. Я предпочитаю подход обертывания моделей в ViewModels и привязывание их к представлению. Это также позволяет мне применять DataAnnotations к модели, проверенной в представлении. –