martedì 15 febbraio 2011

Silverlight verificare la connessione internet tramite VB.net e C#


Riporto l'articolo scritto per il sito http://www.iprogrammatori.it/articoli/programmazione/art_silverlight-verificare-la-connessione-in_997.aspx



Introduzione


In questo articolo, vedremo in Silverlight, come verificare se c’è la connessione internet o no. Inoltre intercettare il momento in cui si ha tale possibilità, il tutto tramite il linguaggio di programmazione VB.Net e C#
Dopo aver aperto visual studio 2010, si crea un nuovo progetto in Silverlight, una volta aperto il progetto Silverlight, inseriamo nella form, un pulsante.
Passiamo in visualizzazione codice, inseriamo lo spazio dei nomi Networkinformation, di System.Net, in questo modo possiamo gestire le classi per la connessione internet.
Qui di seguito si riporta il codice delle suddette operazioni.


VB.Net


Imports System.Net.NetworkInformation



C#


using System.Net.NetworkInformation;



Nell’evento click del pulsante, precedentemente inserito, scriviamo il codice che visualizza tramite un messaggio a video, se c’è la connessione ad internet o no, il tutto utilizzando il metodo GetIsNeworkAvailable della classe networkinterface, restituisce true se è c’è la rete oppure false.
Qui di seguito si riporta il codice per il linguaggio di programmazione VB.Net e C#


VB.Net


If NetworkInterface.GetIsNetworkAvailable() = True Then


MessageBox.Show("Rete")


Else


MessageBox.Show("No Rete")


End If



C#


if (NetworkInterface.GetIsNetworkAvailable() == true)


MessageBox.Show("Rete");


else


MessageBox.Show("No Rete");



Ora scriviamo il codice, che implementa un gestore di evento della classe networkchange permettendo in questo modo, di rilevare quando la connessione cambia. L’evento NetWorkAddressChanged, ci può tornare utile, nel momento in cui vogliamo verificare se la connessione alla rete è presente oppure no.
Qui di seguito riportiamo il frammento di codice da utilizzare nell’evento di inizializzazione della nostra applicazione silverlight, per esempio nel costruttore della nostra applicazione.


VB.Net


Public Sub New()


InitializeComponent()


AddHandler NetworkChange.NetworkAddressChanged, AddressOf CambiaRete


End Sub



C#


public Page1()


{


InitializeComponent();


NetworkChange.NetworkAddressChanged += new NetworkAddressChangedEventHandler(NetworkChange_NetworkAddressChanged);


}



Mentre il frammento di codice, riguarda la funzione per l’evento NetworkaddressChanged, del precedente esempio di codice.


VB.Net


Private Shared Sub CambiaRete(ByVal sender As Object, ByVal ByVale As EventArgs)



If NetworkInterface.GetIsNetworkAvailable() = True Then


MessageBox.Show("Rete")


Else


MessageBox.Show("No Rete")


End If


End Sub



C#


void NetworkChange_NetworkAddressChanged(object sender, EventArgs e)


{


if (NetworkInterface.GetIsNetworkAvailable() == true)


MessageBox.Show("Rete");


else


MessageBox.Show("No Rete");



Conclusioni


L’articolo ha voluto fornire una semplice tecnica per la verifica costante della rete, informazione utile, nel caso si devono eseguire delle operazioni in rete. Tecnica che può essere utilizzata anche per applicazioni silverlight che girano al di fuori del browser.

Nessun commento: