ASP.NET MVC - модели, уведомляющие представления? - PullRequest
0 голосов
/ 01 декабря 2010

В некоторых классических описаниях MVC Модель уведомляет Представления через шаблон наблюдателя. Мне кажется, что это не происходит с ASP.NET MVC, и поэтому отсутствует одно из фундаментальных отношений между Model, View и Controller.

Это так? Если так, то почему?

Ответы [ 2 ]

2 голосов
/ 01 декабря 2010

Представления в ASP.NET MVC не сохраняют состояние. Они существуют очень короткое время и затем отправляются клиенту.

Процесс идет примерно так:

  1. Запрос поступает в контроллер.

  2. Контроллер извлекает модель и создает представление (передавая ему модель).

  3. Вид отображается, разметка возвращается клиенту, а затем удаляется.

Следовательно, поскольку представление больше не существует после отправки клиенту ... об изменениях модели уведомлять нечего.

0 голосов
/ 02 декабря 2010

Шаблон наблюдателя не требуется.В первоначальном определении View это говорит:

Представление присоединяется к его модели (или части модели) и получает данные, необходимые для представления из модели, задавая вопросы.

http://heim.ifi.uio.no/~trygver/2007/MVC_Originals.pdf

В контексте веб-приложения единственным возможным представлением является разметка (HTML / XML), отображаемая браузером.Таким образом, как и в ASP.NET MVC, код View передается экземпляру Model, к которому он может получить доступ для предоставления информации пользователю.

...