2011-02-06 8 views
5

Mam usługę dupleksową WCF z klientem Silverlight i usługą .NET 3.5 WCF.WCF: Obsługa wyjątków w OneWay OperationContract

Mój scenariusz: podczas operacji dupleksu wypchnij operację OneWay z serwera do klienta, jeśli wystąpi wyjątek w procedurze powiadamiania klienta, kanał zostanie cicho zarzucony, więc wszelkie dalsze wywołania dupleksu z limitu czasu serwera i kończą się niepowodzeniem. (Jak wyjaśniono tutaj One-Way Operations and Exceptions)

Moje pytanie (s):

  1. Mogę tylko udekorować FaultContractOneWay OperationContract, owinąć wyjątku na kliencie i zapobiec Błąd kanału?
  2. jeśli nie, jaki byłby inny sposób na złapanie wyjątku, który wystąpił na kliencie podczas dwustronnego wypychania z serwera?
+1

To potrzebuje odpowiedzi. = [ – Langdon

Odpowiedz

0

Podczas korzystania z OneWayOperationContract odbiornik nie powinien odpowiadać, a nadawca żądania powinien oczekiwać.

  1. Nie można.
  2. Najlepszym rozwiązaniem jest utworzenie kolejnego klienta pomiędzy klientem a usługą, aby usługa mogła wysłać błąd do klienta.