Klasės egzemplioriai (iš kurių paveldi "Global") kuriami ASP.NET infrastruktūroje, o ne tiesiogiai vartotojo. HttpApplication klasės egzempliorius naudojamas kelioms užklausoms apdoroti per savo gyvavimo laiką, tačiau vienu metu jis gali apdoroti tik vieną užklausą. Tai leidžia naudoti nario kintamuosius kiekvienos užklausos duomenims saugoti.
Programa vykdo įvykius, kuriuos apdoroja modulis arba vartotojo kodas, apibrėžtas faile global.asax, tokia tvarka:
1 、 PradėtiUžklausa (Įvyksta kaip pirmasis įvykis HTTP vykdymo srauto grandinėje, kai ASP.NET atsako į užklausą)
2 、 Autentifikuoti prašymą (Atsiranda, kai saugos modulis nustato vartotojo tapatybę.) Pastaba: Įvykis AuthenticateRequest signalizuoja, kad sukonfigūruotas autentifikavimo mechanizmas autentifikavo dabartinę užklausą. Planuojant AuthenticateRequest įvykį užtikrinama, kad užklausa bus autentifikuota prieš apdorojant pridėtą modulį arba įvykio apdorojimo programą. )
3 、 PostAuthenticateRequest (Pastaba: šis įvykis yra naujas .NET Framework 2.0 versijoje.) Įvyksta, kai saugos modulis nustato vartotojo tapatybę. Įvykis PostAuthenticateRequest iškeliamas įvykus įvykiui AuthenticateRequest. Galimybė suplanuoti įvykį PostAuthenticateRequest gali pasiekti visus PostAuthenticateRequest apdorojamus duomenis. )
4 、 Įgalioti užklausą (Atsiranda, kai saugos modulis patvirtino vartotojo autorizaciją.) Įvykis AuthorizeRequest signalizuoja, kad ASP.NET autorizavo dabartinę užklausą. Planuojant "AuthorizeRequest" įvykį užtikrinama, kad užklausos būtų autentifikuotos ir įgaliotos prieš apdorojant papildomus modulius ar įvykių apdorojimo programas. )
5 、 Prašyti autorizuoti (Nauji įvykiai .NET 2.0.) Įvyksta, kai šiuo metu prašomas vartotojas yra įgaliotas. Įvykis PostAuthorizeRequest signalizuoja, kad ASP.NET autorizavo dabartinę užklausą. Užsakius įvykį "PostAuthorizeRequest" užtikrinama, kad užklausos būtų autentifikuotos ir įgaliotos prieš apdorojant papildomus modulius ar apdorojimo programas. )
6 、 ResolveRequestCache (Įvyksta, kai ASP.NET užbaigia autorizavimo įvykį, kad talpyklos modulis aptarnautų užklausą iš talpyklos, praleidžiant įvykio apdorojimo programos (pvz., puslapio ar XML žiniatinklio serverių) vykdymą.) )
7 、 PostResolveRequestCache (Atsiranda, kai ASP.NET praleidžia dabartinės įvykių apdorojimo programos vykdymą ir leidžia talpyklos moduliui patenkinti užklausas iš talpyklos.) PostResolveRequestCache įvykis, PostMapRequestHandler Prieš įvykį sukurkite įvykio apdorojimo programą (atitinkančią užklausos URL puslapį).
8 、 PostMapRequestHandler Įvyksta, kai ASP.NET susieja dabartinę užklausą su atitinkama įvykių apdorojimo programa
9 、 ĮsigytiPrašyti valstybės Atsiranda, kai ASP.NET gauna dabartinę būseną, susietą su dabartine užklausa, pvz., seanso būseną
10、PostAcquireRequestState Atsiranda, kai gaunate užklausos būseną, susietą su dabartine užklausa, pvz., seanso būseną
11 、 PreRequestHandlerExecute Tai įvyksta prieš pat ASP.NET pradedant vykdyti įvykių apdorojimo programą (pvz., puslapį arba XML žiniatinklio tarnybą).
12 、 PostRequestHandlerExecute Įvyksta, kai ASP.NET įvykių apdorojimo programa (pvz., puslapis arba XML žiniatinklio tarnyba) baigia vykdyti
13、ReleaseRequestState Įvyksta po to, kai ASP.NET įvykdė visas užklausos įvykių apdorojimo programas. Dėl šio įvykio būsenos modulis įrašys dabartinius būsenos duomenis.
14、PostReleaseRequestState Įvyksta ASP.NET kai baigia vykdyti visas užklausos įvykių apdorojimo programas ir saugomi užklausos būsenos duomenys.
15、UpdateRequestCache Taip atsitinka, kai ASP.NET baigia vykdyti įvykių apdorojimo programą, kad talpyklos modulio saugykla būtų naudojama atsakymui iš talpyklos į vėlesnes užklausas pateikti.
16 、 PostUpdateRequestCache Šis įvykis įvyksta po to, kai ASP.NET baigia atnaujinti talpyklos modulį ir išsaugo atsakymą, kad aptarnautų vėlesnes užklausas iš talpyklos.
17 、 Pabaigos užklausa Įvyksta kaip paskutinis įvykis HTTP vykdymo srauto grandinėje, kai ASP.NET atsako į užklausą.
Kodas yra toks:
|