如何在C#中检查您是否已连接到Internet?

有很多方法可以检查Internet是否以C#连接到计算机。利用System.Net命名空间,该命名空间提供了向URI标识的资源发送数据和从中接收数据的通用方法。WebClient或HttpClient类提供了用于将数据发送到URI标识的任何本地,Intranet或Internet资源或从中接收数据的通用方法。在下面的示例中,我们使用(OpenRead)将资源中的数据作为流返回。

如果成功返回true或false,则点击URL“ http://google.com/generate_204”进行检查。

下面的示例在循环中运行,并检查是否已连接Internet。如果已连接Internet,则返回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("http://google.com/generate_204"))
      return true;
   }
   catch { }
   return false;
}

输出结果

Connected
猜你喜欢