3

アプリケーション(サーバー)とクライアントが名前付きパイプ(すべて.NET 4.0)を介してWCFで接続されています。すべて正常に動作します。クライアントからサーバーへの呼び出し方法とサーバーからクライアントへの呼び出し方法(コールバック)はどちらも正常に機能します。では、サーバーからクライアントにイベントを送信するにはどうすればよいですか?

私が達成しようとしていることは次のとおりです。

  • クライアントがサーバー上で長期メソッドを呼び出し、すぐに戻る
  • サーバーが処理の準備ができると、サーバーはクライアントにイベントを送信します
  • その後、クライアントはサーバー上のメソッドを呼び出して結果を取得できます

どうすればこれをきれいに行うことができますか?

4

2 に答える 2

2

非同期で行う方法を確認できます: How to: Call WCF Service Operations Asynchronously。(ここに貼り付けるにはちょっとコードが多いので、リンクは残しておきます。

于 2012-10-11T21:12:05.190 に答える
1

非同期の WCF 呼び出しは、よりシンプルにしたい場合に適しています。.NET 4.0 には、そこにasyncキーワードがあります。または、一定時間待ってからサーバー関数を呼び出して、ファイルの準備ができているかどうかを確認することもできます。確実に非同期を使用するために、よりシンプルかつ高速にポーリングを使用します。

于 2012-10-11T22:52:49.993 に答える