Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

C#에서 인터넷 연결 여부를 확인하는 방법은 무엇입니까?


C#에서 컴퓨터에 인터넷이 연결되어 있는지 확인하는 방법에는 여러 가지가 있습니다. URI로 식별되는 리소스에 데이터를 보내고 받는 일반적인 방법을 제공하는 System.Net 네임스페이스를 사용합니다. WebClient 또는 HttpClient 클래스는 URI로 식별되는 로컬, 인트라넷 또는 인터넷 리소스에 데이터를 보내거나 받는 일반적인 방법을 제공합니다. 여기 아래 예제에서 (OpenRead)를 사용하여 리소스의 데이터를 스트림으로 반환합니다.

성공이 true를 반환하거나 false를 반환하는 경우 URL "https://google.com/generate_204"를 눌러 확인합니다.

아래 예제는 루프에서 실행되어 인터넷이 연결되었는지 여부를 확인합니다. 인터넷이 연결되어 있으면 true를 반환하고 그렇지 않으면 false를 반환합니다.

static void Main(string[] args){
   var keepRetrying = true;
   while (keepRetrying){
      if (IsConnectedToInternet()){
         keepRetrying = false;
         System.Console.WriteLine("Connected");
      } else {
         keepRetrying = true;
         System.Console.WriteLine("Not Connected");
      }
   }
}
public static bool IsConnectedToInternet(){
   try{
      using (var client = new WebClient())
      using (client.OpenRead("https://google.com/generate_204"))
      return true;
   }
   catch { }
   return false;
}

출력

Connected