August 14
Correttamente la chiusura di un canale di WCF per il vostro servizio può rendere l'applicazione client più user-friendly per la gestione degli errori correttamente e evitando qualsiasi crash improvviso dell'applicazione. Un canale client WCF si apre quando si chiama una operazione; errori possono accadere a causa di una serie di circostanze. Il modo migliore per chiudere correttamente un canale è quello di utilizzare il "try ... catch" blocchi e interrompere il collegamento del canale in caso di eventuali errori. Dopo una operazione di successo, si dovrebbe anche verificare lo stato del client per gli errori nel caso in cui è necessario interrompere la connessione, invece di chiuderlo.
1 Crea il tuo oggetto client WCF aggiungendo la seguente riga di codice:
<YourClientName> WCFclientVar = new <yourClientName>
2 Aggiungere il seguente codice per chiamare le operazioni nel vostro servizio WCF dal blocco "provare" e correttamente chiudere la connessione canale dopo aver completato senza errori:
provare
{
Console.WriteLine(WCFclientVar.operationName);
if (WCFclientVar.State != System.ServiceModel.CommunicationState.Faulted)
{
WCFclientVar.Close();
MessagBox.Show (“Your WCF executed successfully”);
}
Altro
{
WCFclientVar.Abort ();
MessagBox.Show ( "Cliente interrotta nel blocco try causa di un errore Riprova!.");
}
}
3 Maniglia tempo fuori eccezioni nel blocco di "catturare" e interrompere la connessione di canale utilizzando il seguente codice:
catch (timeout TimeoutException)
{
WCFclientVar.Abort();
MessagBox.Show (“Connection time out!”);
}
4 Si potrebbe anche aggiungere il seguente blocco "catturare" per catturare eventuali altri errori e interrompere il collegamento del canale quando si verificano:
catch (Exception ex)
{
WCFclientVar.Abort();
MessagBox.Show (ex.Message);
}