2010-10-04 3 views
1

Я пытаюсь использовать DirectoryList в виртуальном каталоге, чтобы создать список файлов. Однако я получаю ошибку;DirectoryInfo, обращающийся к виртуальной папке

URI не поддерживается

Есть ли альтернатива этому, что поддерживает URL-адреса? Вот мой код до сих пор .....

DirectoryInfo directoryinfo = new DirectoryInfo("http://localhost:1080/mydatafolder"); 
IEnumerable<FileInfo> fileList = directoryinfo.GetFiles(); 

Как двойная проверка, я убедился, что просмотр каталогов был включен, и я могу просматривать его с помощью Opera.

ответ

0

Если вы хотите получить список файлов с удаленного сервера HTTP можно использовать HttpWebRequest class до отправьте запрос на листинг каталога и проанализируйте содержимое страницы индекса HTML, возвращенной IIS.

Вот начало:

var request = (HttpWebRequest)WebRequest.Create("http://servername/directoryname/"); 
var response = (HttpWebResponse)request.GetResponse(); 

using (var reader = new StreamReader(response.GetResponseStream())) 
{ 
    string body = reader.ReadToEnd(); 
} 

Близкие по теме ресурсы:

+0

Спасибо за ответ, очень осветительными. Оценил! – wonea

3

DirectoryInfo предназначен только для файловой системы, вы должны использовать DirectoryEntry для получения информации IIS.

Посмотрите на эту статью, чтобы увидеть все виды способов получить & изменения метаданных IIS с помощью C#: http://www.codeproject.com/KB/cs/iismanager.aspx

Смежные вопросы