Inštancie triedy (z ktorej Global preberá) sa vytvárajú v ASP.NET infraštruktúre a nie priamo používateľom. Inštancia triedy HttpApplication sa používa na spracovanie viacerých požiadaviek počas svojej životnosti, ale dokáže spracovať len jednu požiadavku naraz. To umožňuje používať členské premenné na ukladanie dát pre každú požiadavku.
Aplikácia vykonáva udalosti spracované modulom alebo používateľským kódom definovaným v súbore global.asax v nasledujúcom poradí:
1、Začať žiadosť (Vyskytuje sa ako prvá udalosť v reťazci HTTP vykonávacích pipeline, keď ASP.NET odpovedá na požiadavku)
2、AuthenticateRequest (Vyskytuje sa, keď bezpečnostný modul ustanovil identitu používateľa.) Poznámka: Udalosť AuthenticateRequest signalizuje, že konfigurovaný autentifikačný mechanizmus autentifikoval aktuálnu požiadavku. Plánovanie udalosti AuthenticateRequest zabezpečuje, že požiadavka je autentifikovaná pred spracovaním pripojeného modulu alebo obslužného modulu udalostí. )
3、PostAuthenticateRequest (Poznámka: Táto udalosť je nová vo verzii .NET Framework 2.0.) Nastáva, keď bezpečnostný modul ustanovil identitu používateľa. Udalosť PostAuthenticateRequest sa spustí po udalosti AuthenticateRequest. Možnosť naplánovať udalosť PostAuthenticateRequest umožňuje prístup ku akýmkoľvek dátam spracovaným PostAuthenticateRequest. )
4、AuthorizeRequest (Nastáva, keď bezpečnostný modul overil autorizáciu používateľa.) Udalosť AuthorizeRequest signalizuje, že ASP.NET autorizoval aktuálnu požiadavku. Plánovanie udalosti AuthorizeRequest zabezpečuje, že požiadavky sú autentifikované a autorizované pred spracovaním ďalších modulov alebo obslúžnikov udalostí. )
5、Žiadosť o autorizáciu (Nové udalosti v .NET 2.0.) Stáva sa, keď je aktuálne požadovaný používateľ autorizovaný. Udalosť PostAuthorizeRequest signalizuje, že ASP.NET autorizoval aktuálnu žiadosť. Rezervácia udalosti PostAuthorizeRequest zabezpečuje, že požiadavky sú autentifikované a autorizované pred spracovaním ďalších modulov alebo handlerov. )
6、ResolveRequestCache (Vyskytuje sa, keď ASP.NET dokončí autorizačnú udalosť, aby modul cache spracoval požiadavku z cache, pričom preskočí vykonávanie obslužného zariadenia udalostí (napríklad stránky alebo XML Web zariadení.) )
7、PostResolveRequestCache (Vyskytuje sa, keď ASP.NET preskočí vykonávanie aktuálneho obslužníka udalostí a umožní modulu cache uspokojiť požiadavky z cache.) PostResolveRequestCache event, PostMapRequestHandler Pred udalosťou vytvorte obsługu udalosti (zodpovedajúcu stránke URL požiadavky).
8、PostMapRequestHandler Vyskytuje sa, keď ASP.NET mapoval aktuálnu požiadavku na príslušný obslužovateľ udalostí
9、AcquireRequestState Vyskytuje sa, keď ASP.NET získa aktuálny stav spojený s aktuálnou požiadavkou, napríklad stav relácie
10、PostAcquireRequestState Nastáva, keď ste získali stav požiadavky spojený s aktuálnou požiadavkou, napríklad v stave relácie
11、PreRequestHandlerExecute Stáva sa to tesne pred ASP.NET spustením obsługovača udalostí (napríklad stránky alebo XML webovej služby).
12、PostRequestHandlerExecute Vyskytuje sa, keď ASP.NET obsługa udalostí (napríklad stránka alebo XML webová služba) dokončí vykonávanie
13、ReleaseRequestCondition Vyskytuje sa po tom ASP.NET čo vykonali všetky obsługovače udalostí požiadaviek. Táto udalosť spôsobí, že stavový modul uloží aktuálne stavové dáta.
14、Stav žiadosti o uvoľnenie Vyskytuje sa, keď ASP.NET dokončí vykonávanie všetkých obslužných nástrojov udalostí požiadaviek a údaje o stave požiadavky sú uložené.
15、UpdateRequestCache Toto nastáva, keď ASP.NET dokončí vykonávanie obsługy udalostí, takže pamäť cache modulu bude použitá na doručenie odpovede z cache na ďalšie požiadavky.
16、PostUpdateRequestCache Táto udalosť nastáva ASP.NET po dokončení aktualizácie modulu cache a uložení odpovede na spracovanie ďalších požiadaviek z cache.
17、EndRequest Vyskytuje sa ako posledná udalosť v reťazci HTTP vykonávacieho pipeline, keď ASP.NET odpovedá na požiadavku.
Kód je nasledovný:
|