channelfactoryを使用してIIS7(TCP)のWCFサービスと通信するWCFクライアントがあるとします。通信が切断された場合(またはサービスが再利用された場合)、クライアントからの次の呼び出しで例外が発生します。通信例外は自動的に再接続しますか?
この時点で、私は例外を隠し、代わりに再接続/再ログインを試みる必要があります。
クライアント側のすべてのServiceAgentMethodに処理コードを追加しないと、これを行う簡単な方法がある場合、質問はですか?例えば、MessageInspectorで解決することは可能でしょうか?
私のケースでは、ChannelFactoryから作成された単数のIServceInterfaceでサービスメソッドを実行するクライアントにいくつかのAgentクラスがあります。このようなもの:
MyServiceAgent.GetService().GetMyObjects
GetService()は、ChannelFactoryによるログイン時に作成されたIServiceInterfaceを返します。
イムわかりませんクライアントのインターフェイスですか?思考は、ある種のデリゲートメソッドを使用することです。メソッドがデリゲートを呼び出してオブジェクトを返すとします。このメソッドはデリゲートを(サービスに対して)実行し、必要に応じて再接続を処理しようとします。成功した呼び出しが完了した時点で、オブジェクトを返し、エージェントメソッドにそれを正しい型にキャストさせます。それは働くだろうか? – Banshee