WCFサービスのクライアントプロキシのインスタンスをAppクラスのプロパティに配置して、アプリケーションのどこからでも取得できます。いつWCFクライアントを閉じるのですか?
私はクライアントを閉じていない、私はアプリの期間中開いたままにしています。これの主な理由は、// WCFサービスのmexページ(//ブラウザにWCFサービスURLを指定した場合に得られるコメント)の//コメントに従うということです。//常にクライアントを閉じます。 client.Close();
私はclient.SomeAsync()メソッドを呼び出した直後にclient.Close()を呼び出した場合を除いて、結果は戻ってくる前に閉じています。私はCompleted()メソッドにcloseを置くべきですか?それとも、閉じてしまえば、クライアントプロキシの新しいインスタンスを作成する必要があります(それがApp.propertyに格納されていない可能性があります)。
ありがとう、 スティーブン
closeを使用すると、例外が発生する可能性があるため、try catchも同様に追加することを忘れないでください。 http://msdn.microsoft.com/en-us/library/ms405496.aspx私はこのように試してみてください。 { client.Close(); } catch { client.Abort(); } –
ClientBaseでDisposeを呼び出すと、Closeが呼び出されることにも注意してください。 –