Вот ТАК вопрос, который близок к вашему:
Лучший способ проверить, жив ли сайт из приложения на C #
Как правило, вы можете проверить статус сайта, используя следующий код:
WebRequest request = WebRequest.Create("http://localhost/myContentSite/test.aspx");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
if (response == null || response.StatusCode != HttpStatusCode.OK)
{
Console.WriteLine("You have a problem");
}
Что касается наилучшего способа сделать это, я бы порекомендовал использовать модель домашнего телефона, если это возможно в вашей ситуации. Таким образом, вам не нужно заботиться о том, кто был добавлен. Они просто автоматически появятся при первой регистрации. Однако, если вы не имеете полного контроля над кодом всех ваших сайтов (или если вы уже запустили их), вероятно, было бы лучше использовать централизованный решение для мониторинга, которое проверяет доступность сайта. Это уменьшит количество изменений, которые необходимо внести в системы. Наконец, если вы хотите действительно проверить, что сайт работает, проверьте удаленно, а не отправляйте сообщение «Я жив». Это обеспечит работоспособность брандмауэра и т. Д., Поскольку сайт может отправлять сообщения, но он может быть недоступен из внешних сетей.