Это моя текущая функция ниже. Он используется для создания папки в библиотеке документов в SharePoint, но с использованием функциональности web-dav, которая проще, чем MOSS.
Мне нужно найти способ, чтобы надежно определить, существует ли папка ... Обратите внимание, что теперь я полагаюсь на эту попытку catch, но это означает, что ЛЮБОЕ исключение протокола не вызовет ошибку, поэтому это ненадежная функция. Как я могу проверить с помощью веб-Дав, если папка существует?
private void createFolderUsingWebDav(string siteAddress, string listAddress, string folderName)
{
//Check Databox Folder Exists
string folderAddress = siteAddress + @"/" + listAddress + @"/" + folderName;
HttpWebResponse response;
try
{
HttpWebRequest request = (System.Net.HttpWebRequest)HttpWebRequest.Create(folderAddress);
request.Credentials = wsLists.Credentials; // CredentialCache.DefaultCredentials;
request.Method = "MKCOL";
response = (System.Net.HttpWebResponse)request.GetResponse();
response.Close();
}
catch (WebException ex)
{
if (ex.Status != WebExceptionStatus.ProtocolError)
{
throw ex;
}
}
}
По сути, я хочу развернутую версию того, что этот продукт достигает здесь:
http://www.independentsoft.de/webdav/tutorial/exists.html