Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

จะตรวจสอบได้อย่างไรว่าคุณเชื่อมต่อกับอินเทอร์เน็ตหรือไม่ใน C #?


มีหลายวิธีในการตรวจสอบว่าอินเทอร์เน็ตเชื่อมต่อกับเครื่องในภาษา C# หรือไม่ ใช้ประโยชน์จากเนมสเปซ System.Net ซึ่งมีวิธีการทั่วไปในการส่งข้อมูลไปยังและรับข้อมูลจากทรัพยากรที่ระบุโดย URI คลาส WebClient หรือ HttpClient จัดเตรียมวิธีการทั่วไปสำหรับการส่งข้อมูลไปยังหรือรับข้อมูลจากทรัพยากรในเครื่อง อินทราเน็ต หรืออินเทอร์เน็ตที่ระบุโดย URI ในตัวอย่างด้านล่างนี้ เราใช้ (OpenRead) ส่งกลับข้อมูลจากทรัพยากรเป็นสตรีม

ตรวจสอบโดยกด 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