PARTE 4 – CAPITOLO 10 – LE PARTI DI UN SITO
Le applicazioni .NET (almeno quelle installate in un ambiente di produzione) vengono gestite da un Web Server, tipicamente Microsoft IIS. In questo caso ogni applicazione è eseguita all’interno di una Virtual Directory e sotto un diverso Application Domain, per assicurarsi che non vi siano pericolose “condivisioni” di risorse (dato che il disco fisico su cui sono installate le diverse applicazioni è lo stesso).
All’interno di ogni Virtual Directory la struttura delle applicazioni web è molto simile: esisterà un file chiamato Global.asax utile per reagire ad eventi globali rispetto all’applicazione e una lista comune di cartelle: bin (contiene assembly precaricati e dell’applicazione), App_Code (contiene assembly caricati dinamicamente – le classi definite dall’utente), App_Data(contiene database mdf, file xml ecc..), App_GlobalResources (contiene le risorse che devono essere accessibili da tutta l’applicazione), APP_LocalResources (contiene le risorse che devono essere accessibili da una specifica pagina), App_Webreferences (contiene riferimenti ai web-services), App_Browser (contiene informazioni sul browser in uso), App_Themes (contiene informazioni sul tema in uso).
Come già anticipato è possibile inserire un componente esterno includendo la sua definizione nelle pagina che intendono utilizzarlo.
Nel file di macchina machine.config (comune a tutte le applicazioni su un Web Server) sono definiti parametri di base, limiti architetturali e di congestione e machine-key per criptare i dati.
Nella cartella root di ogni applicazione è poi presente un file Web.Config che sovrascrive parti del Machine.Config impostando proprietà dettagliate per l’applicazione corrente. Scendendo di livello, ogni sottocartella può contenere un file Web.Config che si preoccupa di rifinire le impostazioni dell’applicazione. Non tutte le impostazioni possono essere ridefinite dai file di configurazione dei livelli “inferiori”.
A livello di applicazione e di sessione, gli eventi che possono essere scatenati sono quelli di ApplicationStart, SessionStart, ApplicationError, SessionEnd, ApplicationEnd, ApplicationDispose.
A livello di pagina invece il processo di caricamento è scandito dagli eventi BeginRequest > AuthenticateRequest > AuthorizeRequest > ResolveRequestCache > AcquireRequestState > PreRequestHandlerExecute > HTTP HANDLER > PostRequestHandlerExecute > Release Request State > UpdateRequestCache > End Request.
Una risposta a “HowTo – Guida ASP.NET (Parte 10)”
[…] puntata della mini-guida ad ASP.NET. Qui il […]