2010-08-17 17 views
0

Я использую приложение ASP.NET MVC. Однако я не могу понять, что в ASP.NET страницы MVC не отправляются/не возвращаются. Как это возможно? Если вы не публикуете данные о том, как структура MVC может обрабатывать опубликованные данные. Итак, в чем смысл говорить, что ASP.NET MVC не имеет почтовых сообщений. А также что такое принцип REST?asp.net mvc postback

Невозможно понять из содержимого в сети, которое я видел. Может ли кто-нибудь объяснить?

ответ

8

Разница между сообщениями ASP.NET и сообщениями ASP.NET MVC заключается в том, что в MVC ваша страница не подвергается традиционному жизненному циклу страницы ASP.NET. Вместо этого ваши сообщения сопоставляются с одним методом обработки.

Часть привлекательности MVC заключается в том, что она разводится с некоторых механизмов отслеживания состояния традиционных ASP.NET. Поскольку каждый POST или GET сопоставляется с отдельным контроллером и методом, становится менее необходимым отслеживать такие вещи, как состояние просмотра.

Не отправляя назад столько информации о состоянии и обрабатывая полный жизненный цикл страницы, модель должности по праву считается характерно отличной от традиционных веб-форм, но по-прежнему зависит от методов HTTP, с которыми мы знакомы.

Что касается вашего вопроса о REST, вы можете прочитать обзор высокого уровня в Википедии: http://en.wikipedia.org/wiki/Representational_State_Transfer

7

ASP.NET MVC-страницы действительно опубликованы. Вы должны понимать, что «postback» ASP.NET - это не более чем обычный пост из основной (только) формы на странице. В MVC формы также публикуются (как и обычный html), но их основное отличие заключается в том, что они отправляют конкретное действие контроллера.

3

В MVC есть сообщения, а не понятие WebForm об обратной передаче. В WebForms все вернется к форме, которая ее создала, и эта форма будет обрабатывать события и, если применимо, перенаправить соответственно. Это представило, по крайней мере, мое мнение, несколько разбитое представление о моделях веб-разработки.

С другой стороны, MVC публикует данные для действий на стороне сервера. Любые действия, которые вы хотите, где угодно. Это действие - это метод, который обрабатывает этот пост. Не метод для этой кнопки и метод для раскрывающегося списка автозапуска, а одно атомное действие, которое обрабатывает этот пост и соответственно возвращает следующий вид.