Quelqu’un sait-il comment obtenir par programme la liste des sites et les répertoires virtuels dans IIS 7?
Découvrez cet article – semble être une nouvelle API de gestion épatante dans l’espace de noms Microsoft.Web.Administration
:
http://blogs.msdn.com/carlosag/archive/2006/04/17/MicrosoftWebAdministration.aspx
Voici un bref aperçu graphique de cet article de blog:
Et voici un article “The Gu” sur les nouvelles fonctionnalités et API IIS7 de Cool
Quelque chose comme ceci trouvera tous les sites, leurs applications et leurs répertoires virtuels sur votre serveur IIS7:
static void Main(ssortingng[] args) { ServerManager mgr = new ServerManager(); foreach(Site s in mgr.Sites) { Console.WriteLine("Site {0}", s.Name); foreach(Application app in s.Applications) { Console.WriteLine("\tApplication: {0}", app.Path); foreach(VirtualDirectory virtDir in app.VirtualDirectories) { Console.WriteLine("\t\tVirtual Dir: {0}", virtDir.Path); } } } Console.ReadLine(); }
Un inconvénient important à l’utilisation de l’assembly Microsoft.Web.Administration est que le code doit être exécuté sur une machine sur laquelle IIS7 est installé.
Lorsque je développais un système pour charger des sites IIS7 dans une page Web sur mon ordinateur Windows XP, j’ai découvert cette limitation. L’API est géniale, j’aurais juste aimé pouvoir l’utiliser.
Contrôler le serveur IIS 7 à partir d’un serveur Windows 2003 par programme