如何在 C# 中检查是否已连接到互联网?


有许多方法可以检查 C# 中是否连接到机器互联网。利用 System.Net 命名空间,该命名空间为通过 URI 发向资源和从资源接收数据提供了通用方法。WebClient 或 HttpClient 类为通过 URI 发向或从任何本地、内联网或互联网资源接收数据提供了通用方法。在以下示例中,我们使用了(OpenRead)将数据从资源返回为流。

通过访问 url“http://google.com/generate_204”进行检查,如果成功返回真,否则返回假。

以下示例在循环中运行,并检查是否已连接到互联网。如果已连接到互联网,则返回真,否则返回假。

示例

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

更新于:05-11-2020

1 千+ 次浏览

开启您的职业旅程

完成课程认证

开始学习
广告