He estado tratando de recuperar la lista de redes disponibles usando WifiAdapter. Tengo una solución funcional que he estado probando en una aplicación de consola:
List<WiFiAvailableNetwork> networks = new(); IEnumerable<WiFiAdapter> adapters = await WiFiAdapter.FindAllAdaptersAsync(); foreach (WiFiAdapter adapter in adapters) { foreach (WiFiAvailableNetwork network in adapter.NetworkReport.AvailableNetworks) { networks.Add(network); } } return networks;
Pero una vez que esta solución está configurada en mi proyecto blazor wasm, se bloquea con esta excepción: System.TypeInitializationException: el inicializador de tipo para 'Windows.Devices.WiFi.WiFiAdapter' generó una excepción. d.printErr @ blazor.webassembly.js:1 blazor.webassembly.js:1 ---> System.DllNotFoundException: api-ms-win-core-winrt-string-l1-1-0.dll
He estado buscando una respuesta pero no encontré ninguna solución relevante. ¿Alguna idea sobre cómo resolverlo / por qué está sucediendo?
Gracias por adelantado !
No todas las partes de la plataforma .net son compatibles con todos los entornos.
Blazor WebAssembly no ejecutará nada desde Windows.* .
Cuando desee acceder a algún dispositivo, tendrá que investigar si JavaScript puede usarlo y cómo.
Puede usar una API experimental desde el navegador, llamándola a través de JSRuntime en Blazor WASM.
Mire aquí: https://developer.mozilla.org/en-US/docs/Web/API/Network_Information_API