Computer >> Máy Tính >  >> Lập trình >> C#

Làm thế nào để kiểm tra xem bạn đã kết nối Internet hay chưa trong C #?


Có nhiều cách để kiểm tra xem Internet có được kết nối với máy bằng C # hay không. Sử dụng không gian tên System.Net cung cấp các phương pháp phổ biến để gửi dữ liệu đến và nhận dữ liệu từ một tài nguyên được xác định bởi URI. Lớp WebClient hoặc HttpClient cung cấp các phương pháp phổ biến để gửi dữ liệu đến hoặc nhận dữ liệu từ bất kỳ tài nguyên cục bộ, mạng nội bộ hoặc Internet nào được xác định bởi URI. Ở đây trong ví dụ dưới đây, chúng tôi đã sử dụng (OpenRead) Trả về dữ liệu từ một tài nguyên dưới dạng Luồng.

Kiểm tra bằng cách nhấn vào url "https://google.com/generate_204" nếu thành công trả về true, còn false.

Ví dụ dưới đây chạy trong vòng lặp và kiểm tra xem Internet có được kết nối hay không. Nếu Internet được kết nối, trả về true hoặc nếu không, trả về false.

Ví dụ

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;
}

Đầu ra

Connected