Eh no, mi dispiace, non è filosofico questo post. Sto parlando della vita di un'applicazione web! :-D
Oggi discutevo col mio collega di come sarebbe utile poter scegliere quale web.config caricare o differenziare le sezioni a seconda della macchina. Capita spesso di sviluppare sulla propria macchina e di dover effettuare il deployment temporaneo dell'applicazione per tenere aggiornarto il cliente. Trovo molto scomodo ogni volta differenziare alcune impostazioni di web.config di cui faccio largo uso.
Va beh, lasciando stare questo aspetto mi è venuto in mente la proprietà ConfigurationFile della classe AppDomainSetup e sono andato a naufragare tra le classi.
C'è una classe AppDomainFactory che non usa nessuno, ma che implementa una interfaccia COM. Non è ho la certezza, ma ci scometto che il worker process ASP.NET chiama il metodo Create di questa interfaccia per creare l'AppDomain. Ogni AppDomain conterrà ogni singola applicazione web e garantirà l'isolamento dalle altre anche nello stesso processo.
Se guardiamo, troviamo queste interessanti righe di codice:
setup.PrivateBinPath = "bin"; setup.PrivateBinPathProbe = "*"; setup.ShadowCopyFiles = "true"; setup.ApplicationBase = AppDomainFactory.MakeFileUrl(appPath, true); setup.ApplicationName = appName; setup.ConfigurationFile = "web.config"; setup.DisallowCodeDownload = true;
Ecco come funziona. Peccato che non si possa modificare niente e abbiamo usato impostazioni fisse.
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
- LINQ, lazy loading e architettura, l'11 marzo 2011 alle 18:42
- MetadataDiffViewer: aggiornato al .NET Framework 4.0, Silverlight 4.0 e Sharepoint 2010, il 7 gennaio 2010 alle 13:58
- .NET Framework 4.0 beta 1: Windows Communication Foundation, il 18 maggio 2009 alle 16:00
- Parallelizzare in Silverlight 2.0, il 21 aprile 2009 alle 00:25
- Silverlight: performance dell'isolated storage, il 16 aprile 2009 alle 17:38
- MetadataDiffViewer: differenze tra i framework, il 15 aprile 2009 alle 18:56