Мой вопрос: Обнаруживает ли HttpWebResponse.StatusCode ошибки Asp.Net?В основном желтый экран смерти?
Немного предыстории: Я работаю над простым консольным приложением c #, которое будет проверять серверы и службы, чтобы убедиться, что они по-прежнему функционируют должным образом.Я предположил, что поскольку коды HttpStatusCodes перечислены с помощью OK, Moved, InteralServerError и т. Д., Что я мог бы просто сделать следующее.
WebRequest request = WebRequest.Create(url);
request.Timeout = 10000;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
if (response == null || response.StatusCode != HttpStatusCode.OK)
{
// SERVER IS OK
return false;
}
else
{
// SERVER HAS SOME PROBLEMS
return true;
}
Однако утром я обнаружил, что это не работает.Сбой приложения ASP.Net с желтым экраном смерти, и мое приложение, похоже, не возражало, потому что response.StatusCode равнялся HttpStatusCode.OK.
Чего мне не хватает?
Спасибо // lance
Обновление Благодаря Джону, похоже, это работает.
HttpWebResponse response;
try
{
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException webexp)
{
response = (HttpWebResponse)webexp.Response;
}