Есть ли способ убедиться, что после получения WebException в следующем коде произошли ошибки DNS?
WebRequest request = WebRequest.Create(uri);
....
WebResponse response = request.EndGetResponse(asyncResult);
Сравнение строк может быть одним из способов. Проверяя сообщение об ошибке, мы можем быть уверены. Но в зависимости от культуры строка сообщения может быть разной. Так что это может быть не лучший способ проверить ошибку DNS.
2 ответа
Одно из значений WebExceptionStatus - это NameResolutionFailure. Это указывает на ошибки DNS.
Вместо того, чтобы полагаться (когда-либо!) На полученное ответное сообщение, я бы полагался на StatusCode полученного WebResponse. Код состояния HTTP в диапазоне 4xx (400-499)
может указывать на проблемы DNS или ошибки при обнаружении ресурса.
Похожие вопросы
Новые вопросы
c#
C # (произносится как «резкий») - это высокоуровневый, статически типизированный язык программирования с несколькими парадигмами, разработанный Microsoft. Код C # обычно нацелен на семейство инструментов и сред выполнения Microsoft .NET, включая, среди прочего, .NET Framework, .NET Core и Xamarin. Используйте этот тег для вопросов о коде, написанном на C # или в формальной спецификации C #.