#116 - Visualizzare gli handler abilitati in un'applicazione web con LINQ e Microsoft.Web.Administration
di Stefano Mostarda, in LINQ, 22 aprile 2009
Grazie all'assembly Microsoft.Web.Administration, si può investigare in ogni angolo delle applicazioni pubblicate con IIS 7 anche andando a leggere i valori impostati nel file di configurazione. In questo script vediamo come scorrere tutti i siti e le relative applicazioni visualizzando quali siano gli handler abilitati.
var items = (from site in serverManager.Sites from app in site.Applications select new { Site = site.Name, Application = app.Path, Handlers = GetHandlers(app) });
Il metodo GetHandlers non fa altro che recuperare la sezione di configurazione relativa agli handlers e scorrere tutti i nodi add per prendere quelli attivi.
Dictionary<string, string> GetHandlers(Application app) { try { var x = app.GetWebConfiguration().GetSection("system.webServer/handlers"); return x.GetCollection().Where(c => c.Schema.Name == "add") .ToDictionary(c => c.Attributes["name"].Value.ToString(), c => c.Attributes["type"].Value.ToString()); } catch{ return new Dictionary<string,string>(); } }
Approfondimenti
-
Rilasciato ASP.NET MVC 2 RC2
-
#102 - Ordinare dinamicamente una query con EntitySQL in Entity Framework
-
I nuovi Chart Controls di Microsoft per ASP.NET
-
#1004 - Utilizzare le DataAnnotation con ASP.NET Dynamic Data Controls
-
#112 - Raggruppare i siti in IIS 7.0 in base all'ApplicationPool con LINQ to Objects
-
#147 - Gestire tutte le eccezioni in WPF
-
#146 - Simulare la clausola SQL Exists con il metodo Any in LINQ to Entities
-
#132 - Utilizzare una funzione come corpo di una lambda in LINQ to Objects
-
Tutti pazzi per il .NET Micro Framework
-
Oltre il database, da Bing a Twitter: i provider per LINQ per ogni esigenza
-
Windows 7 e Windows Server 2008 R2 RC al download libero
-
#978 - ASP.NET ed Entity Framework: Paginazione ed ordinamento con EntityDataSource

















Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.