Korrekt lukke en WCF -kanal for din service kan gøre din klient program mere brugervenligt ved at håndtere fejl korrekt og undgå enhver pludselig bryder sammen af ansøgningen. En WCF klient kanal åbnes , når du kalder en operation fejl kan ske på grund af en række omstændigheder . Den bedste måde til korrekt lukke en kanal , er ved at bruge " try ... catch " blokke og afbryde kanalforbindelse i tilfælde af eventuelle fejl. Efter en vellykket operation , bør du også tjekke tilstanden af klienten for fejl , hvis du har brug for at afbryde forbindelsen i stedet for at lukke det. Instruktioner
1
Opret din WCF klient objekt ved at tilføje følgende linje kode : Hej
WCFclientVar = new
2 < p > Føj følgende kode til at kalde operationer i din WCF service fra " try" blok og korrekt lukke kanalen forbindelsen efter at den er afsluttet uden fejl : Hej try { Console.WriteLine ( WCFclientVar.operationName ), hvis ( WCFclientVar.State = System.ServiceModel.CommunicationState.Faulted ) { WCFclientVar.Close (); MessagBox.Show ( "Dit WCF henrettet med succes "); }! Else { WCFclientVar.Abort (); MessagBox.Show ( " Client aborterede i prøve ! . blokere følge af en fejl Prøv venligst igen "); }}
3
Handle timeout undtagelser i " catch " blok og afbryde din kanal -forbindelse ved hjælp af følgende kode: < br >
fangst ( TimeoutException timeout ) { WCFclientVar.Abort (); MessagBox.Show ( "Connection timeout !") ;}
4
Du kan også tilføje følgende "catch " blok til indfange alle andre fejl og afbryde den kanal -forbindelsen, når de sker : Hej
catch ( Exception ex ) { WCFclientVar.Abort (); MessagBox.Show ( ex.Message );}