Je suis face à un problème étrange dans IIS 7.0:comportement étrange dans IIS 7.0 - System.DirectoryServices
J'ai le répertoire virtuel suivant dans IIS: alt text http://i39.tinypic.com/4iijbb.jpg
et que le mode d'authentification Windows est activé sur le répertoire virtuel dans IIS
maintenant, si je tente de s'associé DirectoryEntry pour TestV/dossier/file.aspx de cette manière:
string vDir = @"/TestV/folder/file.aspx";
DirectoryEntry dir = new DirectoryEntry("IIS://" + serverName + "/W3SVC/1/ROOT" + vDir, @"adminusername", @"password");
dir.AuthenticationType = AuthenticationTypes.Secure;
try
{
Console.WriteLine(dir.Name);
}
catch (Exception exp)
{
Console.WriteLine(exp.Message);
}
Console.WriteLine("");
Je reçois l'exception: « Le système ne peut pas trouver le chemin d'accès spécifié »
Maintenant, si je retourne à IIS puis procédez comme suit: Faites un clic droit sur TestV/Dossier et activer le mode d'authentification anonyme et puis le désactiver à nouveau
Faites un clic droit sur TestV/dossier/file.aspx et activer le mode d'authentification anonyme puis le désactiver à nouveau
Essentiellement je viens o effectué un accès manuel n le fichier aspx Testv/Folder/file.aspx.
Après les étapes ci-dessus si je re exécuter le programme, le code est en mesure d'accéder avec succès l'entrée de répertoire et imprime avec succès le nom (file.aspx)
Quel est le problème ici?
Un plus d'informations:
Je vois ce comportement sur IIS 6.0 également. Donc, il semble que jusqu'à et à moins que je fais une opération manuelle dans IIS pour un dossier/fichier dans le répertoire virtuel, il ne crée pas les métadonnées correspondantes dans le répertoire actif?
Vous pouvez utiliser la méthode DirectoryEntry.Exists statique pour voir si l'entrée existe. – robertburke