Я использую простой веб-клиент для получения некоторого XML из веб-службы, я заключил это в простой блок try, catch (перехват WebException). Подобно следующему:
try
{
WebClient client = new WebClient();
client.DownloadStringCompleted += new DownloadStringCompletedEventHandler(client_DownloadStringCompleted);
client.DownloadStringAsync(new Uri("http://ip/services"));
}
catch (WebException e)
{
Debug.WriteLine(e.Message);
}
Нет, если я изменю IP-адрес на недействительный, я бы ожидал, что он выдаст исключение и выведет сообщение в окно отладки. Но это не так, кажется, блок catch даже не выполняется. Ничего не отображается и не отображаются окна отладки, кроме следующего:
A first chance exception of type 'System.IO.FileNotFoundException' occurred in mscorlib.dll
A first chance exception of type 'System.Net.WebException' occurred in System.Windows.dll
A first chance exception of type 'System.Net.WebException' occurred in System.Windows.dll
Мой код мне кажется правильным, поэтому я не могу понять, почему исключения не перехватываются?