Использование пользовательского значения для HttpMethod

Я использую HttpClient и мне нужно установить нестандартный тип для HttpMethod, Где с помощью HttpWebRequest ожидает только строку, HttpClient ожидает HttpMethod, Перечисление доступных значений в HttpMethodЯ не вижу способа добавить пользовательский. Какие-нибудь мысли?

2 ответа

Решение

Не знаю, почему я не думал попробовать это раньше, но я могу позвонить new HttpMethod("MYMETHOD");

Огромное спасибо. Я попробовал самые странные вещи, но я не видел этого простого решения:)

Я пытаюсь использовать CalDAV REST-Requests для соединения с моим ownCloud-CalDAV-сервером в XAML-C#-MetroApp. Работает отлично сейчас. Наконец-то я могу изменить HTTP-метод на PROPFIND-тип.

Вот мой код для получения информации ( http://sabre.io/dav/building-a-caldav-client/).

    ...
        try {
            HttpClientHandler httpClientHandler = new HttpClientHandler();
            httpClientHandler.AllowAutoRedirect = false;
            httpClientHandler.Credentials = new NetworkCredential(caldavuserTB.Text, caldavpasswordTB.Text);

            HttpClient httpClient = new HttpClient(httpClientHandler);
            httpClient.MaxResponseContentBufferSize = 256000;

            propfindMethod = new HttpMethod("PROPFIND");

            propfindHttpRequestMessage = new HttpRequestMessage(propfindMethod, webURLAsURI);

            propfindHttpRequestMessage.Headers.Add("Prefer", "return-minimal");
            propfindHttpRequestMessage.Headers.Add("Depth", "0");
            propfindHttpRequestMessage.Headers.Add("Accept", "application/xml; charset=utf-8");
            propfindHttpRequestMessage.Content = new StringContent("<d:propfind xmlns:d=\"DAV:\" xmlns:cs=\"http://calendarserver.org/ns/\"><d:prop><d:displayname /><cs:getctag /></d:prop></d:propfind>");


            propfindHttpResponseMesage = await httpClient.SendAsync(propfindHttpRequestMessage);
        }
    ...
Другие вопросы по тегам