Životní cyklus ASP.NET stránky

20. prosince 2006 | Radek Kropík | Komentáře (0)


Životní cyklus každé ASP.NET stránky začíná vždy, když odešlete serveru požadavek na její zobrazení. Nejdříve server požadovanou stránku nahraje, zpracuje a nakonec pošle ve formě HTML na koncové zařízení klienta. Pokud jste někdy programovali v ASP, jistě víte, že se kód stránky vždy prováděl od prvního řádku do posledního. U ASP.NET aplikací je ale všechno jinak, jedná se zde totiž o plnohodnotné objektové programování. Na to musíte při vývoji ASP.NET aplikací myslet a začít využívat OOP. Tento přístup vám vývoj velice usnadní a také zpřehlední samotné programování.

Nyní se pojďme podívat na to, jakými fázemi zpracování taková ASP.NET stránka prochází.

Init – Inicializace

Při požadavku na stránku ASP.NET aplikace vždy na začátku dojde k její inicializaci. Je vyvolána událost Init a zpracována metoda OnInit(). Tím dojde k inicializaci objektů uvnitř stránky a také nastavení pro zpracování požadavku.

LoadViewState – Nahrání dat ve ViewState

Na rozdíl od klasické ASP stránky, ASP.NET stránka umí uchovávat stavové informace všech prvků v ní obsažených a to právě ve ViewState. Tyto informace se nahrávají právě v metodě LoadViewState().

LoadPostData – Zpracování vstupních dat

Pokud odešlete formulář, dochází k jeho zpracování a popřípadě jeho aktualizaci právě v metodě LoadPostData(). Proč popřípadě? Protože aktualizovat vlastnosti je možné pouze u těch prvků, které podporují rozhraní IPostBackDataHandler.

Load – Načtení a zpracování stránky

V metodě OnLoad() události Load jsou zpracovány všechny požadavky. Všechny objekty na stránce jsou inicializovány, formulářové prvky odpovídají datům předaným klientem. Právě v tomto okamžiku můžete manipulovat s jednotlivými prvky a nastavovat jejich vlastnosti.

RaisePostDataChanged – Došlo ke změně dat

Pokud dojde na stránce k nějaké změně, třeba k vyplnění TextBoxu nebo zaškrtnutí CheckBoxu, dojde ke zpracování metody RaisePostDataChangedEvent().

RaisePostBackEvents – Vyvolání události

Pokud máme v metodě OnInit() zaregistrovány příslušné události, dojde podle chování klienta k vyvolání události RaisePostBackEvent.

PreRender – Předrenderování stránky

Zde máte poslední možnost změnit vlastnosti prvků stránky a uchovat jejich stav ve vlastnosti ViewState. Událost je vyvolána pouze u těch prvků, které budou na stránce zobrazeny.

SaveViewState – Uložení ViewState (stavu stránky a prvků)

K uložení stavu prvků na stránce dojde při zpracování metody SaveViewState(). Jestliže jste si někdy zobrazili zdrojový kód své ASP.NET stránky, viděli jste v tomto kódu prvek Input Hidden s názvem __VIEWSTATE. Zde je právě ono ViewState uložené. Pokud nechcete, aby se ViewState ukládalo, nastavte vlastnost EnableViewState na hodnotu False.

Render – Vygenerování stránky

A zde již dochází k vygenerování výstupu – ať HTML nebo např. XML, který má být posléze poslán klientovi. Vykreslení všech prvků na stránce zajišťuje metoda Render().

Dispose – Odstranění objektů

V této fázi dochází k odstraňování objektů, které se při zpracování stránky použily.

UnLoad – Odstranění stránky ze zpracování

A na konec je vyvolána událost UnLoad a tato odstraní všechny prvky stránky ze zpracování. Po ukončení zpracování této metody je již stránka odeslána klientovi a zobrazena v prohlížeči.

A to je vlastně celý životní cyklus ASP.NET stránky. Pokud chcete na vlastní oči vidět, jak takové zpracování stránky probíhá, nastavte v hlavičce stránky v direktivě @Page vlastnost Trace na hodnotu True a pod vykreslenou stránkou uvidíte tabulku s informacemi, jak byla postupně stránka zpracovávána. Ještě je nutno dodat, že většina metod určených ke zpracování stránky je možno předefinovat a upravit dle vlastních požadavků. Ale to už je na další článek.

Tisk
 

Komentáře k článku

Počet komentářů: 0

Článek dosud nebyl komentován
Buďte první, kdo okomentuje tento článek!




V komentářích není povoleno HTML a bude před odesláním formuláře odstraněno. Všechny URL začínající na 'http://' a e-mailové adresy budou převedeny na odkazy. Nový odstavec můžete vytvořit stejně jako v textovém editoru pomocí klávesy Enter.
Redakce si vyhrazuje právo smazat příspěvky, které jsou vulgární nebo by mohly jakkoliv poškodit tento magazín! Nezapoměňte správně opsat kontrolní kód!




(nebude zveřejněn)




Kontrolní kód



 

Novinky v magazínu

26.11.08 - Komentáře
Jak jste si jistě všimli, vytvořili jsme pro vás inovované komentáře k článkům. Doufáme, že se vám nyní budou články snadněji a pohodlněji komentovat.

Ikonka pro Vás

Líbí se vám tento magazín a rádi byste ho nějak podpořili? Pokud máte své webové stránky, budeme vám vděčni, pokud si na ně přidáte naší ikonku.


Statistika



Partnerské weby


Reklama