TIP - Adquirir la IP de tu máquina en WinRT

Bienvenidos a este artículo, en el que veremos un pequeño tip para saber cómo conseguir la dirección de IP de tu máquina en las aplicaciones de Windows 8, Windows 8.1 y Universal Apps.

Desarrollo

DNS no está soportado en WinRT Apps. Pero tenemos una manera sencilla de adquirir la dirección IP en una aplicación Metro:

  • Importamos Windows.Networking.Connectivity.
  • Ahora podemos recuperar el perfil de conexión asociado a la conexión a Internet utilizada actualmente con NetworkInformation.GetInternetConnectionProfile.
  • Con NetworkInformation.GetHostNames conseguimos una lista de nombres de host.

public string CurrentIPAddress() { var icp = NetworkInformation.GetInternetConnectionProfile(); if (icp != null && icp.NetworkAdapter != null) { var hostname = NetworkInformation.GetHostNames() .SingleOrDefault( hn => hn.IPInformation != null && hn.IPInformation.NetworkAdapter != null && hn.IPInformation.NetworkAdapter.NetworkAdapterId == icp.NetworkAdapter.NetworkAdapterId); if (hostname != null) { // the ip address return hostname.CanonicalName; } } return string.Empty; } Espero que os sea útil este pequeño tip. Happy Coding!