別の ServiceStack サービス (B) を呼び出す ServiceStack サービス (A) があります。
(B) がエラーをスローした場合、(A) で WebServiceException をキャッチできますが、(B) のエラーを (A) のクライアントに伝播するための推奨される方法は何ですか? (B)の例外を再スローする必要がありますか、それともキャッチしないだけですか?
別の ServiceStack サービス (B) を呼び出す ServiceStack サービス (A) があります。
(B) がエラーをスローした場合、(A) で WebServiceException をキャッチできますが、(B) のエラーを (A) のクライアントに伝播するための推奨される方法は何ですか? (B)の例外を再スローする必要がありますか、それともキャッチしないだけですか?
(A) から (B) を呼び出すために型指定された C# クライアントを使用している場合、はい、例外を (A) のクライアントに伝播させたい場合は、それをキャッチすることはできず、C# クライアントはスローします発生した例外は (A) のクライアントにシリアル化され、そのクライアントが C# ServiceClient を使用している場合は、その例外がスローされます。
フローは次のようになります。
(A client) -> (A service) -> (B client) -> (B service)
deserializes <- deserializes <- throws Exception E
and rethrows E and rethrows E
それが理にかなっていることを願っています。