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>();
}
}Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Usare la parola chiave field per semplificare la scrittura di proprietà in C#
Usare la libreria PredicateBuilder per eseguire query tramite Entity Framework che usano or su più campi
Migrare applicazioni legacy nel cloud con Azure App Service Managed Instance
Creare espressioni riutilizzabili nelle query LINQ per Entity Framework
Mischiare codice server side e client side in una query LINQ con Entity Framework




