Puede que tu aplicación necesite conocer de antemano si tienes conexión a Internet. Generalmente, si vas a consumir servicios web o establecer conexiones en la red. Para ello puedes implementar esta pequeña función que te indicará si dispones o no de internet en el equipo.
public static bool HaveInternet()
{
bool result = false;
// Ver si tenemos conexión a la red local
if (System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable())
{
System.Uri Url = new System.Uri(“https://www.google.com/”);
System.Net.WebRequest WebRequest;
WebRequest = System.Net.WebRequest.Create(Url);
System.Net.WebResponse objResp;
try
{
objResp = WebRequest.GetResponse();
objResp.Close();
result = true;
}
catch (Exception)
{
result = false;
}
WebRequest = null;
}
else //No hay conexión activa a una red, por lo tanto no hay internet
{
result = false;
}
return result;
}
Para ponerlo a prueba puedes implementar un pequeño método como el siguiente:
private void tengoInternetToolStripMenuItem_Click(object sender, EventArgs e)
{
bool tengoInternet = MyClase.HaveInternet();
if (tengoInternet)
{
MessageBox.Show(“Tengo internet activa.”, “Test”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
MessageBox.Show(“No tengo internet.”, “Test”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
Ponlo a prueba, piensa en cómo mejorarlo y comparte con nosotros tus progresos.