【发布时间】:2017-05-29 13:48:32
【问题描述】:
我的电脑有几个不同的互联网连接。 LAN、WLAN、WiFi 或 3G。所有这些都处于活动状态,机器可以使用其中任何一个。
现在我想告诉我的应用程序使用其中一个可用的连接。例如,我想告诉我的应用程序只使用 WiFi,而其他软件可能会使用其他东西。
在告诉应用程序之前,我们选择了一个互联网,并想检查所选的互联网是否工作正常。那么我们如何检查选定的互联网是否已连接。
【问题讨论】:
我的电脑有几个不同的互联网连接。 LAN、WLAN、WiFi 或 3G。所有这些都处于活动状态,机器可以使用其中任何一个。
现在我想告诉我的应用程序使用其中一个可用的连接。例如,我想告诉我的应用程序只使用 WiFi,而其他软件可能会使用其他东西。
在告诉应用程序之前,我们选择了一个互联网,并想检查所选的互联网是否工作正常。那么我们如何检查选定的互联网是否已连接。
【问题讨论】:
在此处查看答案: Choose one of many Internet connections for an application
但是,是否有任何理由指定网络接口?如果有多个网络适配器,WebClient 或任何其他实现将使用具有更好指标的接口,您可以通过以下代码检索这些指标:
NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface adapter in adapters)
{
Console.WriteLine(adapter.Speed);
}
默认会使用速度更快的适配器,因此您不必担心使用 3G 代替 Wi-Fi 或使用 Wi-Fi 代替以太网。
【讨论】: