Что такое «жизненный цикл страницы» страницы ASP.NET MVC по сравнению с ASP.NET WebForms?
Я пытаюсь лучше понять этот «простой» вопрос, чтобы определить, можно ли легко конвертировать существующие страницы, имеющиеся у меня (на очень простом) сайте, из ASP.NET WebForms.
Либо «преобразование» процесса, описанного ниже, либо альтернативный жизненный цикл - это то, что я ищу.
Что я сейчас делаю:
(да, я знаю, что любой, кто способен ответить на мой вопрос, уже знает все это - я просто пытаюсь получить сравнение «жизненного цикла», поэтому я подумал, что начну с заполнения того, что мы все уже знаем)
Рендеринг страницы:
- У меня есть главная страница, которая содержит мой основной шаблон
- У меня есть страницы контента, которые дают мне именованные регионы из главной страницы, в которую я помещаю контент.
- В обработчике событий для каждой страницы содержимого я загружаю данные из базы данных (в основном только для чтения).
- Я связываю эти данные с элементами управления ASP.NET, представляющими сетки, выпадающие списки или повторители. Все эти данные «живут» внутри сгенерированного HTML. Часть этого попадает в ViewState (но я не буду вдаваться в это слишком много!)
- Я устанавливаю свойства или привязываю данные к определенным элементам, таким как элементы управления Image или TextBox на странице.
- Страница отправляется клиенту в формате HTML, который нельзя использовать повторно.
- Я стараюсь избегать использования ViewState кроме того, что нужно странице как минимум.
Клиентская сторона (без использования ASP.NET AJAX):
- Я могу использовать JQuery и некоторые неприятные приемы, чтобы найти элементы управления на странице и выполнить над ними операции.
- Если пользователь выбирает из выпадающего списка - генерируется постбэк, который вызывает событие C # в моем коде. Это событие может попасть в базу данных, но, что бы он ни делал, полностью сгенерированная HTML-страница в конечном итоге отправляется обратно клиенту.
- Я могу использовать Page.Session для хранения пар ключ-значение, которые мне понадобится позже
Так с MVC, как меняется этот «жизненный цикл»?