comment obtenir le nom du pool d'applications pour un site web spécifique IIS6 par programmation? C#
comment obtenir le nom du pool d'applications spécifique à un site web IIS 6 programmatique à l'aide de C#
EDIT:
J'ai déjà utilisé les méthodes de DirectoryServices espace de noms mais le nom du pool d'applications n'est pas récupéré correctement, sauf si elle a été explicitement définie en utilisant le même code. Ce qui signifie que si u ajouter un site web manuellement à l'aide du gestionnaire des services internet et configurer une application de la piscine, ces codes ne fonctionne pas (il retournera toujours DefaultAppPool) plus de quand j'ai créer une application à l'aide de sharepoint et de définir un autre pool d'applications de ces méthodes ne fonctionnent pas.
OriginalL'auteur Amr Elsehemy | 2009-02-04
Vous devez vous connecter pour publier un commentaire.
Les classes de l' Système.Espace de noms DirectoryServices vous aidera à obtenir cette information.
Vérifier cet article de Rick Strahl pour un exemple:
plus plus, quand je créer une application à l'aide de sharepoint et de définir un autre pool d'applications de ces méthodes ne fonctionnent pas.
Merci, je ne le savais pas. Peut-être que vous devriez ajouter cette information à votre question?
OriginalL'auteur M4N
Je ne suis pas d'accord avec vous. J'ai codé une application de test et j'obtiens le bon nom du pool d'applications, même si j'ai mis le pool d'applications manuellement à l'aide du Gestionnaire des services IIS.
Pour s'en assurer, j'ai testé une fois, nom de nom était "ok", puis, je popep le Gestionnaire des services internet, a changé le pool d'applications, exécuté
iisreset
, et a couru de l'application de test une fois encore le nom du pool d'applications que j'ai eu était de corriger à nouveau. Je ne sais pas comment votre code ressemble, mais le mien est comme ceci:Désolé pour mon mauvais anglais.
J'espère que j'ai aidé.
Bon à savoir qu'il travaille pour IIS7 aussi! Et à propos de la "prise", je suis d'accord avec vous devez faire ce qui vous convient le mieux!
Selon le commentaire stackoverflow.com/q/249927/496357#comment11785064_496357 vous devez activer "IIS 6 WMI Compatibilité" sur IIS7 pour que cela fonctionne.
OriginalL'auteur Ricardo Nolde
En bref, il y a 2 façons de faire qui viennent à l'esprit.
Le moins de manière raffinée, c'est de savoir que, IIS6 les paramètres sont stockés dans la Métabase qui est tout simplement un fichier Xml:
Vous pouvez simplement utiliser Linq2Xml et parser le Xml à la recherche pour les sites nom ou l'Id, Le AppPoolId attribut contient le nom du pool d'applications
La bonne façon est d'utiliser Système.DirectoryServices
OriginalL'auteur