WebRequest для PUT файла на сервере SharePoint возвращает (405) Метод запрещен

У меня есть сервер sharepoint, на котором размещены некоторые файлы.

У меня есть код .Net, который создает WebRequest для ПОЛУЧЕНИЯ некоторых файлов. Это работает правильно.

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

System.Net.WebException: The remote server returned an error: (405) Method Not Allowed on my request.GetResponse();

Я не получаю никаких InnerExceptions.

Вот мой код:

        var requestPath = Path.Combine(serverBasePath, library.GetLibraryPath(), Path.GetFileName(filePath));

        var request = WebRequest.Create(requestPath);
        request.Credentials = CredentialCache.DefaultNetworkCredentials;
        request.Method = "PUT";
        var buffer = new byte[1024];

        using (var requestStream = request.GetRequestStream())
        using (var fileStream = new FileStream(filePath, FileMode.Open))
            for (int i = fileStream.Read(buffer, 0, buffer.Length); i > 0; i = fileStream.Read(buffer, 0, buffer.Length))
                requestStream.Write(buffer, 0, i);


        using (request.GetResponse()) { }

        return requestPath;

Использование того же кода (замена PUT на GET и изменение пути к существующему файлу) работает.

Через веб-интерфейс Sharepoint я могу загружать новые файлы. Я также попытался изменить авторизацию в параметрах, чтобы поставить полный доступ для всех аутентифицированных пользователей в этом каталоге.

1
задан Gilles 15 October 2010 в 15:59
поделиться