Pagine Web ASP.NET - Pagine globali


Questo capitolo riguarda le pagine globali AppStart e PageStart.


Prima dell'avvio Web: _AppStart

La maggior parte del codice lato server viene scritto all'interno di singole pagine Web. Ad esempio, se una pagina Web contiene un modulo di input, la pagina Web in genere contiene il codice del server per la lettura dei dati.

Tuttavia, creando una pagina denominata _AppStart nella radice del tuo sito, puoi eseguire il codice di avvio prima dell'avvio del sito. Se questa pagina esiste, ASP.NET la esegue la prima volta che viene richiesta una qualsiasi pagina del sito.

L'uso tipico di _AppStart è il codice di avvio e l'inizializzazione di valori globali come contatori e nomi globali.

Nota 1: _AppStart dovrebbe avere la stessa estensione di file delle tue pagine web, come: _AppStart.cshtml. 

Nota 2: _AppStart ha un prefisso di sottolineatura. Per questo motivo, i file non possono essere sfogliati direttamente.


Prima di ogni pagina: _PageStart

Proprio come _AppStart viene eseguito prima dell'avvio del sito, puoi scrivere codice che viene eseguito prima di qualsiasi pagina in ogni cartella.

Per ogni cartella nel tuo Web, puoi aggiungere un file chiamato _PageStart.

L'uso tipico di _PageStart è l'impostazione della pagina di layout per tutte le pagine in una cartella o il controllo che un utente abbia effettuato l'accesso prima di eseguire una pagina.


Come funziona?

Il diagramma seguente mostra come funziona:

PaginaInizio

Quando arriva una richiesta, ASP.NET verifica se _AppStart esiste. In tal caso, e questa è la prima richiesta al sito, viene eseguito _AppStart.

Quindi ASP.NET controlla se _PageStart esiste. In tal caso, viene eseguito _PageStart, prima della pagina richiesta.

Se includi una chiamata a RunPage() all'interno di _PageStart, specifichi dove vuoi che venga eseguita la pagina richiesta. In caso contrario, _PageStart viene eseguito prima della pagina richiesta.