Ну, во-первых, было бы лучше иметь оператор using
для вашего ответа, а не просто вызывать Close
- в этом случае нет большой разницы, но в целом операторы using
- это путь.
Что касается проверки состояния результата - просто приведите ответ к HttpWebResponse
, а затем используйте свойство StatusCode
. Примерно так:
HttpWebRequest request = (HttpWebRequest) WebRequest.Create(url);
request.Timeout = 15000;
request.Method = "HEAD"; // As per Lasse's comment
try
{
using (HttpWebResponse response = (HttpWebResponse) request.GetResponse())
{
return response.StatusCode == HttpStatusCode.OK;
}
}
catch (WebException)
{
return false;
}