При включении старой генерации элементы управления ASP.NET не используют ни одно из улучшений XHTML, строго совместимых с HTML 4.01. Например, они генерируют стандартные HTML-элементы наподобие <br> вместо корректной XHTML-версии <br />. Однако даже при включении старой генерации ASP.NET не будет удалять пространство имен в дескрипторе <html>, а также тип документа, если эти элементы присутствуют на вашей странице.
На заметку! ASP.NET не гарантирует поддержку атрибута enableObsoleteRendering в будущих версиях ASP.NET, поэтому используйте его только в том случае, если он обязателен в определенном сценарии.
Со стороны сервера обработка Web-формы ASP.NET происходит поэтапно. На каждом этапе генерируются различные события. Это позволяет вашей странице включиться в поток обработки на любом этапе и выдать ответ любым удобным способом.
В следующем списке отражены основные этапы потока обработки:
Следует помнить, что эти этапы проходят независимо для каждого Web-запроса. На рис. 3.4 показан порядок развертывания этих этапов. Здесь приведены не все этапы, а только те, которые обычно используются при программировании ваших собственных элементов управления ASP.NET и не обрабатываются непосредственно страницей.
В следующих нескольких разделах каждый этап будет рассматриваться по отдельности, а затем будет представлен пример простой Web-страницы.
На этом этапе ASP.NET создает страницу. Генерируются все элементы управления, определенные вами в дескрипторах на Web-странице .aspx. Более того, если страница запрашивается не впервые (иначе говоря, если это обратная отсылка), ASP.NET десериализирует информацию о состоянии вида и применяет ее ко всем элементам управления.
На этом этапе запускается событие Page.Init. Однако это событие редко обрабатывается Web-страницей, поскольку еще слишком рано выполнять инициализацию страницы. Причина в том, что объекты элементов управления еще не созданы, а информация о состоянии вида еще не загружена.
предыдущая следующая страница оглавление
117