2009-08-07 12 views
2

WCFで非同期メソッドを呼び出すときにEndpointNotFoundExceptionをキャッチすることは可能ですか?私はtry/catchブロックでクライアントにサービスコールをラップし、EndpointNotFoundExceptions、FaultExceptions、および一般的な例外をキャッチしていますが、クライアントが実行されるとサービスが消えると、非同期呼び出しで例外がキャッチされません。タイムアウトが発生します。EndpointNotFoundExceptionとAsync Call

非同期呼び出し中にデッドサービスをすばやくキャッチするには、どのような方法がありますか(または方法がありますか)。

+0

これは同様の質問ですか? (不幸なことにまだ解決されていない)http://stackoverflow.com/questions/1204534 –

+0

これは似ていますが、SOの検索ではそれが見つかりませんでした。明らかに異なるキーワード。 –

答えて

1

これは何もせずに今開いています。私は答えは基本的にネットワークの種類/予想される処理量などを考慮してタイムアウトをできるだけ低く設定することだと思います.1つの可能性はちょうど「Ping」で非常に短いタイムアウト(例えば5秒)メソッドをハートビートとして使用します。クライアントを使用して、このメソッドを定期的に呼び出して監視し、サーバー/エンドポイントの正常性を取得します。 Simon Foxが指摘したように、より詳細な応答についてはWhere to trap failed connection on WCF calling class?をチェックしてください。