Introduzione al ciclo di vita della pagina ASP.NET
Ogni volta che richiediamo una pagina, prima viene caricata in memoria, quindi elaborata e inviata al browser. Successivamente, viene scaricato dalla memoria. In ogni passaggio sono disponibili metodi, nonché eventi, che possono essere sovrascritti a seconda delle necessità dell'applicazione. La classe di pagina crea innanzitutto un albero gerarchico di tutti i controlli. Tutti questi componenti, ad eccezione delle direttive che fanno parte di questo albero. Potremmo vedere l'albero di controllo se aggiungiamo trace = "true" alla direttiva della pagina.
Ciclo di vita della pagina ASP.NET
Le fasi del ciclo di vita della pagina ASP.NET sono: inizializzazione, istanza dei controlli, ripristino e manutenzione dello stato, esecuzione dei codici del gestore eventi e rendering della pagina. ASP.NET Page Life Cycle è fondamentalmente un framework di applicazioni Web sviluppato e commercializzato da Microsoft per consentire ai programmatori di creare applicazioni Web dinamiche. Consente agli utenti di utilizzare linguaggi completi come C # o VB.NET. Utilizza i comandi HTTP, funziona in cima al protocollo HTTP e utilizza i criteri HTTP per impostare la comunicazione bilaterale da browser a server. I codici ASP.NET possono essere scritti in uno di questi linguaggi: C #, J #, JScript o Visual Basic.Net. ASP.NET ha un gran numero di controlli come caselle di testo, pulsanti ed etichette che possono essere richiesti per manipolare e assemblare il codice per la creazione di pagine HTML.
Le varie fasi del ciclo di vita della pagina ASP.NET sono le seguenti:
PreInit
- In questa fase, la proprietà IsPostBack viene controllata in modo da scoprire se è la prima volta che la pagina viene elaborata.
- Creazione o ri-creazione di controlli dinamici.
- Impostazione dinamica della pagina principale.
- Impostazione dinamica della proprietà Tema.
Dentro
- Questa fase si attiva dopo che ogni controllo è stato inizializzato.
- Viene impostato l'ID univoco di ogni controllo.
- Questa fase viene anche utilizzata per inizializzare le proprietà di controllo.
- L'evento viene prima di tutto lanciato per il controllo più in basso e quindi lanciato verso l'alto la gerarchia fino alla pagina stessa.
InitComplete
- Questo evento può essere utilizzato per apportare modifiche allo stato di visualizzazione.
- Questo evento viene generato dall'oggetto Page.
- L'evento può essere utilizzato per l'elaborazione delle attività che richiedono il completamento dell'inizializzazione.
OnPreLoad
- Questo particolare evento viene sempre generato dopo che lo stato viene visualizzato dal caricamento della pagina per sé e per tutti i controlli, nonché dopo che elabora i dati di postback che sono stati associati all'istanza Request.
- OnPreLoad carica anche lo stato di visualizzazione per sé e per tutti i controlli prima che l'istanza Page generi questo particolare evento e successivamente elabori i dati di postback nell'istanza Request.
Caricare
- Il metodo Load viene chiamato sull'oggetto Page e quindi ricorsivamente fa lo stesso per ogni controllo figlio che viene caricato su tutti i controlli. L'evento Load della pagina si verifica prima dell'evento Load dei singoli controlli.
- È il primo posto nel ciclo di vita della pagina in cui vengono ripristinati tutti i valori.
- Il valore di IsPostBack viene verificato principalmente per evitare inutili stati di ripristino.
- Possiamo chiamare il metodo validate e verificare che IsValid.
- Possiamo anche creare controlli dinamici qui.
- Il metodo dell'evento OnLoad viene utilizzato anche per stabilire connessioni al database e impostare proprietà nei controlli.
Controlla gli eventi PostBack
- NET ora chiamava quegli eventi sulla pagina o entrambi i suoi controlli che avevano causato PostBack.
- In questo caso, se la pagina ha uno dei controlli di validazione, dobbiamo controllare la proprietà IsValid della Pagina prima di eseguire qualsiasi tipo di elaborazione e inoltre dobbiamo controllare la stessa proprietà per controlli di validazione individuali.
- È un esempio di un evento di controllo come l'evento clic sul pulsante che ha causato il postback.
LoadComplete
- Questo evento viene generato al termine della fase di gestione degli eventi.
- L'evento LoadComplete viene utilizzato per il lavoro che richiede il caricamento di tutti i controlli rimanenti sulla pagina.
OnPreRender
- L'evento OnPreRender verrà generato solo dopo che l'oggetto Pagina ha creato tutti i controlli richiesti e i controlli figlio per eseguire il rendering della pagina.
- L'evento PreRender sull'oggetto Page viene generato dall'oggetto Page e, in seguito, in modo ricorsivo, fa lo stesso per ciascuno dei bambini.
- L'evento PreRender della pagina si verifica prima dell'evento PreRender dei singoli controlli.
- Consente inoltre le modifiche finali alla pagina.
- Questa fase si verifica prima di salvare ViewState, quindi le modifiche apportate qui vengono salvate.
OnSaveStateComplete
- Viene generato dopo che lo stato di visualizzazione e lo stato di controllo sono stati salvati per la pagina e i controlli.
- ViewState è stato salvato per la pagina e tutti i controlli prima che si verifichi questo evento specifico.
- Qualsiasi modifica apportata alla pagina o ai controlli in questa fase verrebbe ignorata.
- Il metodo di rendering è il metodo dell'oggetto pagina e dei suoi controlli e non è un evento.
- Questo metodo genera Dynamic Hypertext Markup Language (DHTML), HTML lato client e anche gli script necessari per visualizzare correttamente il controllo nel browser.
Scaricare
- Quest'ultimo evento è sostanzialmente utilizzato per la pulizia.
- Qui, è avvenuta tutta l'elaborazione ed è ora sicuro eliminare tutti gli oggetti rimanenti che includono anche l'oggetto Page.
- La pulizia viene eseguita su:
- Istanze di classi, ovvero oggetti.
- Chiusura dei file aperti.
- Chiusura delle connessioni al database.
- L'evento di scaricamento si verifica per ciascun controllo e infine per la pagina.
- Durante questa fase, la pagina e i relativi controlli sono stati renderizzati, quindi non è possibile apportare ulteriori modifiche al flusso di risposta.
- Se si chiama un metodo come la risposta. Quindi la pagina genererebbe un'eccezione.
Conclusione - Ciclo di vita della pagina ASP.NET
Pertanto possiamo concludere che ogni volta che una pagina viene richiesta dal browser dall'utente, la richiesta passa attraverso una serie di passaggi e varie cose accadono in background in modo da produrre l'output e inviare la risposta al client. La durata tra questa richiesta e la risposta di una pagina è nota come "Ciclo di vita della pagina".
Articoli consigliati
Questa è stata una guida al ciclo di vita della pagina ASP.NET. Qui abbiamo discusso il concetto, varie fasi e fasi del ciclo di vita della pagina ASP.NET. Puoi anche consultare i nostri altri articoli suggeriti per saperne di più -
- Come installare .NET
- Domande di intervista ASP.Net
- Che cos'è la sicurezza di rete?
- Domande di intervista per i test di penetrazione