Tisková verze článku  Poslat článek e-mailem  20. prosince 2006 | Radek Kropík | Komentáře (4)  

Životní cyklus ASP.NET stránky

Ž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.


Radek Kropík




Komentáře k článku


Příspěvky vyjadřují stanovisko čtenářů, nikoliv provozovatelů serveru a redakce nenese odpovědnost za jejich obsah.

        #1
Gravatar
Karik

Tento příspěvek byl smazán redakcí jako SPAM. Opakované vkládání SPAMů může mít za následek např. trvalé zablokování IP adresy.

        #2
Gravatar
dtflqx

Tento příspěvek byl smazán redakcí jako SPAM. Opakované vkládání SPAMů může mít za následek např. trvalé zablokování IP adresy.

        #3
Gravatar
jvdlczxwzvl

Tento příspěvek byl smazán redakcí jako SPAM. Opakované vkládání SPAMů může mít za následek např. trvalé zablokování IP adresy.

        #4
Gravatar
desiraeluvzya

Tento příspěvek byl smazán redakcí jako SPAM. Opakované vkládání SPAMů může mít za následek např. trvalé zablokování IP adresy.




     Komentáře k tomuto článku byly již uzavřeny.


Novinky a oznámení

19.10.11 - Nyní najdete nově u každého článku ikonu obálky. Pokud na ní kliknete, budete moci odeslat odkaz na vybraný článek na e-malovou adresu, kterou zadáte v zobrazivším se formuláři. Odpadá vám tak nutnost pro odeslání odkazu na zajímavý článek spouštět e-mailového klienta a zakládání nového e-mailu.

11.10.11 - Nově v magazínu naleznete tzv. QR kód, který obsahuje vždy adresu právě zobrazené stránky. Pokud máte zobrazenou některou z kategorií článků, obsahuje QR kód adresu této kategorie, pokud máte zobrazený článek, QR kód obsahuje adresu zobrazeného článku, v ostatních případech obsahuje QR kód hlavní adresu magazínu.

23.09.11 - V neděli 25.9.2011 v době mezi 1:00 a 5:00 hod. proběhl přesun služeb serveru na nový hardware. Za nedostupnost magazínu v době přesunu se vám omlouváme.


QR kód článku

QR kód článku

Aktualizace e-mailem

Nechcete, aby vám unikl nový článek? Není nic jednoduššího, než se zaregistrovat a kdykoliv vyjde v magazínu nový článek, dáme vám vědět e-mailem.




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. Stačí přidat na váš web HTML kód, kderý najdete zde.


Partnerské weby


Naši fanoušci na Facebooku


Statistika


Reklama