Rilevazione di connessione e la velocità di Cellular Network vs 802.11 ed Ethernet? C # .Net
-
23-08-2019 - |
Domanda
Sto lavorando su un programma che sarà utilizzato su dispositivi mobili (Windows installazione completa) che può avere la connettività 3G. Se il particolare dispositivo ha la connettività 3G, vorremmo approfittarne. Tuttavia, il programma dovrebbe essere in grado di dare la priorità di comunicazione in base al tipo di connessione e velocità sono attualmente disponibili.
Sono in grado di ottenere un elenco delle interfacce di rete con System.Net.NetworkInformation.NetworkInterface, ma c'è un buon modo per vedere se l'interfaccia è di dati cellulari, wireless o ethernet regolare così come la velocità disponibile ( in particolare nel caso di dati cellulare)?
Soluzione
Questo elenco di tutte le connessioni di rete che sono attualmente in su. Dovrebbe essere un punto di partenza.
var interfaces = NetworkInterface.GetAllNetworkInterfaces()
.Where(n => n.OperationalStatus == OperationalStatus.Up)
.Select(n => new { Nic = n, Speed = n.Speed });