ASP.NET alkalmazás és OLDAL életciklusa
⚡ Okos összefoglaló
Az ASP.NET alkalmazás- és oldaléletciklusa leírja azokat a sorrendben meghatározott szakaszokat, amelyeken egy kérés keresztülmegy, az alkalmazás elindításától és az objektum létrehozásától az oldal inicializálásán, betöltésén, renderelésén és eltávolításán át.ping A fejlesztők a megfelelő helyre helyezik a kódot.

Mi az ASP.Net életciklus?
Egy ASP.Net alkalmazás elindításakor egy sor lépést kell végrehajtani. Ezek a lépések alkotják az alkalmazás életciklusát.
Nézzük meg egy ASP.Net webes alkalmazás tipikus életciklusának különböző szakaszait.
ASP.Net életciklusa
1) Alkalmazás indítása – Az életciklus egy ASP.NET Az alkalmazás akkor indul el, amikor egy felhasználó kérést küld. Ez a kérés az ASP.Net alkalmazás webszerveréhez szól. Ez akkor történik, amikor az első felhasználó általában először látogatja meg az alkalmazás kezdőlapját. Ez idő alatt van egy Application_Start nevű metódus, amelyet a webszerver hajt végre. Általában ebben a metódusban minden globális változó az alapértelmezett értékére van beállítva.
2) Objektum létrehozása – A következő lépés a HttpContext, a HttpRequest és a HttpResponse objektumok létrehozása a webszerver által. A HttpContext egyszerűen a HttpRequest és a HttpResponse objektumok tárolója. A HttpRequest objektum az aktuális kérésre vonatkozó információkat tartalmaz, beleértve a sütiket és a böngésző adatait. A HttpResponse objektum tartalmazza a kliensnek küldött választ.
3) HttpAlkalmazás létrehozása – Ezt az objektumot a webszerver hozza létre. Ez az objektum dolgozza fel az alkalmazásnak küldött minden további kérést. Tegyük fel például, hogy 2 webalkalmazásunk van: az egyik egy webáruházping kosáralkalmazás, a másik pedig egy hírportál. Minden alkalmazáshoz 2 HttpApplication objektumot hoznánk létre. Az egyes webhelyekhez intézett további kéréseket az egyes HttpApplicationok külön-külön dolgoznák fel.
4) Dobja el – Ezt az eseményt az alkalmazáspéldány megsemmisítése előtt hívják meg. Ez alatt az idő alatt ezt a módszert használhatja a nem felügyelt erőforrások manuális felszabadítására.
5) Jelentkezés vége – Ez a pályázat utolsó része. Ebben a részben az alkalmazás végül kiürül a memóriából.
Mi az ASP.Net oldal életciklusa?
Amikor egy ASP.Net oldalt meghívnak, az egy adott életcikluson megy keresztül. Ez a válasz felhasználónak való elküldése előtt történik. Az ASP.Net oldal feldolgozása egy sor lépésből áll.
Nézzük meg az ASP.Net weboldal életciklusának különböző szakaszait.
Az ASP.Net oldal életciklusa
- Oldalkérés – Ekkor kérik le először az oldalt a szervertől. Amikor a szerver lekéri az oldalt, ellenőrzi, hogy először kérik-e le. Ha igen, akkor le kell fordítania az oldalt, elemeznie kell a választ, és el kell küldenie a felhasználónak. Ha nem ez az első alkalom, hogy a szerver lekéri az oldalt, akkor a gyorsítótárban ellenőrzi, hogy létezik-e az oldal kimenete. Ha igen, akkor a választ elküldi a felhasználónak.
- Oldal indítása – Ez idő alatt két objektum jön létre, a Request és a Response objektumok. A Request objektum az oldal kérésekor elküldött összes információt tárolja. A Response objektum a felhasználónak visszaküldött információkat tárolja.
- Oldal inicializálása – Ez idő alatt a weboldal összes vezérlőeleme inicializálódik. Tehát ha bármilyen címke, szövegdoboz vagy bármilyen más vezérlőelem van a webes űrlapon, azok mind inicializálódnak.
- Oldal betöltése – Ekkor az oldal ténylegesen betöltődik az összes alapértelmezett értékkel. Tehát ha egy szövegdoboznak alapértelmezett értéke van, akkor ez az érték az oldal betöltési ideje alatt töltődik be.
- Érvényesítés – Néha lehet valamilyen érvényesítési készlet az űrlapon. Például létezhet egy érvényesítés, amely azt mondja, hogy egy listamezőnek rendelkeznie kell egy bizonyos értékkészlettel. Ha a feltétel hamis, akkor hiba lehet az oldal betöltése során.
- Postback eseménykezelés – Ez az esemény akkor következik be, ha ugyanaz az oldal újra betöltődik. Ez egy korábbi eseményre válaszul történik. Előfordulhat olyan helyzet, amikor a felhasználó a küldés gombra kattint az oldalon. Ebben az esetben ugyanaz az oldal jelenik meg újra, és a Postback eseménykezelő meghívódik.
- Oldal renderelés – Ez közvetlenül azelőtt történik, hogy az összes válaszinformációt elküldik a felhasználónak. Az űrlapon található összes információ elmentésre kerül, és az eredményt teljes weboldalként küldi el a felhasználónak.
- kirakodik – Miután az oldalkimenetet elküldtük a felhasználónak, nem kell megőrizni a ASP.net webes űrlap tárgyak a memóriában. Tehát a kirakodási folyamat magában foglalja az összes nem kívánt objektum eltávolítását a memóriából.
ASP.NET oldal életciklus eseményei
A fenti általános szakaszokon túl az ASP.NET egy meghatározott oldalesemény-sorozatot generál, amelyet a fejlesztők kódban kezelhetnek. A sorrend ismerete segít a logika megfelelő működésének meghatározásában:
- Előzetes inicializálás – mesteroldalak és témák beállítása, valamint dinamikus vezérlők létrehozása.
- Benne – minden vezérlő inicializálásra kerül; használjuk a vezérlő tulajdonságainak olvasására vagy beállítására.
- InitComplete – az összes inicializálás befejezése után jelenik meg.
- Előtöltés – az oldal állapotának és a visszaküldési adatok betöltése előtt történik.
- Terhelés – az oldal és a vezérlői betöltődnek; a legtöbb oldallogika ide kerül.
- Események ellenőrzése – a vezérlőspecifikus események, például a gombra kattintás, kezelésre kerülnek.
- Előrenderelés – a kimenet előtt végezze el a végső módosításokat az oldalon vagy a vezérlőelemeken.
- MentésÁllapotKész – a nézet állapota minden vezérlőelemhez mentésre kerül.
- render – az oldal létrehozza a böngészőnek küldött HTML kimenetet.
- kirakodik – tisztítás történik, és az objektumok felszabadulnak a memóriából.
Alkalmazás életciklusa vs. oldal életciklusa
Az alkalmazás életciklusa és az oldal életciklusa eltérő hatókörben működik. Az alábbi táblázat ismerteti a különbségeket:
| Aspect | Az alkalmazás életciklusa | Oldal életciklusa |
|---|---|---|
| Kör | A teljes webes alkalmazás | Egyetlen oldalas kérés |
| Kezdődik | Az első kérésre (Application_Start) | Minden alkalommal, amikor egy oldalt lekérnek |
| Kulcs események | Alkalmazás_Kezdése, Kérés Kezdete, Alkalmazás_Vége | Inicializálás, Betöltés, Előrenderelés, Eltávolítás |
| Frekvencia | Alkalmazásonként egyszer kezdetben és végén | Oldalanként egyszeri kérés |
Röviden, az alkalmazás életciklusa az egész alkalmazást lefedi az indítástól a leállításig, míg az oldal életciklusa minden alkalommal lefut, amikor egy felhasználó lekér egy oldalt.
Miért fontos megérteni az ASP.NET életciklusát?
Az életciklus megértése elengedhetetlen, mivel az ASP.NET meghatározott pillanatokban futtatja a kódot, és a logika rossz eseménybe helyezése nehezen megtalálható hibákat okoz. A sorrend világos ismerete segít:
- Dinamikus vezérlők létrehozása vagy konfigurálása korai szakaszban, a PreInit vagy az Init módban.
- Állítsd be az alapértelmezett vezérlőértékeket a Load eseményben, hogy azok helyesen jelenjenek meg.
- Végső megjelenítési módosítások alkalmazása a PreRenderben, miután az összes adat össze van kötve.
- Az adatok kétszeri feldolgozásának elkerülése érdekében különítse el az első betöltési kérelmeket a visszaküldésektől.
- Szabadíts fel erőforrásokat és takaríts ki az Unload műveletben a memóriaszivárgások megelőzése érdekében.
Ezen események elsajátítása sokkal kiszámíthatóbbá teszi az állapotkezelést, az validációt és a hibakeresést.


