使用NetworkInterface.GetAllNetworkInterfaces()时如何确定主适配器?

时间:2017-06-07 13:13:00

标签: c# windows adapter ip-address

在C#程序中,我使用以下命令获取所有适配器的信息: NetworkInterface.GetAllNetworkInterfaces()

但是,如何确定哪个是主适配器?我原本以为它是具有最低索引号的适配器,但似乎并非如此。

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您是否在寻找通过其进行连接的有源适配器? 我这样做了:

string currentAdapter = "";

foreach (NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces()) {
    if (ni.OperationalStatus == OperationalStatus.Up
        && ni.NetworkInterfaceType != NetworkInterfaceType.Tunnel
        && ni.NetworkInterfaceType != NetworkInterfaceType.Loopback) {
        currentAdapter = (ni.Name);
    }
}

This solution was found here