HttpWebRequest - метод 405 запрещен - это то, что я ищу

Я думаю, что, возможно, пытаюсь сделать что-то отличное от большинства публикаций здесь. Все, что я нахожу, - это кто-то пытается обойти код ошибки 405, в то время как я пытаюсь конкретно проверить, что я получаю этот код ошибки, поскольку он указывает на то, что мой веб-сервис запущен, работает и доступен.

У меня есть следующий код.

 HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://andrewstxpd.tylermobileapps.com/TPSAlloy/Application.svc/execute-json/");

        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        if (response == null || response.StatusCode != HttpStatusCode.OK)
        {
            Console.WriteLine(response.StatusCode + " : " + response.StatusDescription);
            Console.ReadLine();
        }
        else
        {
            Console.WriteLine(response.StatusCode + " : " + response.StatusDescription);
            Console.ReadLine();
        }

        response.Close();

Когда я запускаю его с помощью http://www.google.com, он показывает мне ОК: ОК в консоли.

Когда я запускаю его для своего адреса веб-службы, он выдает исключение и ошибки с помощью 405 Method Not Allowed, но, конечно же, останавливает программу.

Как мне получить этот текст из сообщения об ошибке, чтобы проверить его намеренно?

Другими словами, для меня 405 Method Not Allowed - это то, что я ищу конкретно, поэтому я не хочу, чтобы программа заканчивалась.


person Mac-Gon    schedule 02.06.2015    source источник
comment
Кстати, я могу поймать исключение, я пытаюсь присвоить текст ошибки переменной, которую я могу использовать, чтобы затем проверить, что это тот 405, который я хочу.   -  person Mac-Gon    schedule 02.06.2015
comment
И, понял. Проблемы с новичком с моей стороны. например, сообщение. да.   -  person Mac-Gon    schedule 02.06.2015


Ответы (1)


Итак, я могу поймать исключение с помощью System.Net.WebException. Затем я присваиваю это переменной, например ex. Затем просто используйте ex.Message, чтобы отобразить его.

catch (System.Net.WebException ex)
        {
            Console.WriteLine("Exception Occurred" + " : {0}", ex.Message);
            Console.ReadLine();
        }

Выполнено.

person Mac-Gon    schedule 02.06.2015