MVC, ViewModels, BLL, нисходящее взаимодействие - PullRequest
2 голосов
/ 04 января 2012

Я пытаюсь понять трехслойный дизайн, в котором MVC находится (или находится в) на уровне представления.В частности, как будет работать концепция взаимодействия «сверху вниз» в отношении бизнес-уровня, ViewModelBuilder и контроллера MVC.

Должен ли сам контроллер получать доступ к BLL?

Где ViewModelBuilder?вписывается в это?

Я только начинаю понимать, что Модель в MVC на самом деле является моделью представления, а не моделью бизнеса или постоянства.Я здесь далеко?

1 Ответ

6 голосов
/ 04 января 2012

Вы сбиты с толку из-за бесчисленных примеров в сети, которые не делают различий между простой архитектурой MVC и той, которая служит только уровнем пользовательского интерфейса в более крупной корпоративной архитектуре. Скорее всего, вам нужно последнее.

В приложениях любого уровня реальной сложности, да, вы захотите думать о своих классах моделей как о моделях представления, а затем отображать их обратно в вашу модель предметной области. Проверьте Automapper, чтобы помочь автоматизировать это.

Вот две действительно хорошие статьи, которые были мне полезны и которые, я думаю, действительно хорошо написаны:

http://blogs.msdn.com/b/simonince/archive/2010/01/26/view-models-in-asp-net-mvc.aspx

http://blogs.msdn.com/b/simonince/archive/2010/12/07/view-model-versus-domain-entity-validation-with-mvc.aspx

...