C # пропустить все исключения прокси - тайм-аут - PullRequest
2 голосов
/ 27 мая 2011

Можно ли как-нибудь пропустить / перехватить все исключения прокси?А также, возможно, установите тайм-аут, чтобы программа не застряла между

webProxy = new WebProxy("" + prox + "");
webProxy.Credentials = CredentialCache.DefaultCredentials;
wr.Proxy = webProxy;

Я добавил

             catch (Exception ex)
            {
                // Do nothing or log
                var exceptio = ex.ToString();
                richTextBox1.Text = exceptio;
            }

, как я могу установить тайм-аут на него?

Ответы [ 2 ]

3 голосов
/ 27 мая 2011

Поможет ли блок try / catch с этим?

2 голосов
/ 27 мая 2011

Как и предполагалось, вам нужно заключить исполняемый код в блок try/catch.
Вы можете возиться с обработкой исключений отладчиком в разделе Отладка / Исключения ... (в Visual Studio), но независимолюбое необработанное исключение всегда приводит к сбою отладчика.

try
{
    // Do work that might fail
}
catch (Exception ex)
{
    // Do nothing or log
    Trace.WriteLine(ex);
}

Подробнее об отладке и исключениях можно найти здесь

Что касается времени ожидания, вы помещаете его в объект WebRequest, а не в прокси,вот так:

WebProxy webProxy = new WebProxy("http://myproxyserver:80/");
WebRequest webRequest = WebRequest.Create("http://www.stackoverflow.com");
webRequest.Proxy = webProxy;
webRequest.Timeout = 5000;  // <-- Set time out here, in milliseconds
...

Подробнее о тайм-ауте здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...