1

クライアントから消費しているWCFサービスから2つの操作を呼び出す必要があります。これらの2つの操作は、2つが完了するまでに数秒かかるため、理想的には同時に呼び出されます。両方の呼び出しが完了したら、クライアントでの作業を続行したいと思います。これを実装するための最良のモデルが何であるか、私は少し立ち往生しています。ヘルプやコードサンプルをいただければ幸いです。

また、クライアントの同じメソッドでWCFサービスからメソッドを呼び出してから、このメソッドで呼び出しが完了するのを待つことはできますか?(これらの2つの操作が戻るのを待つ間、クライアントでは他に何も起こっていないので、非同期呼び出しを開始するのと同じメソッドで待つことができます。)

.NET 4.0 / VS 2010&VisualBasicを使用します。

皆さんありがとう!

4

1 に答える 1

1

「コントロール」をどこに配置するかを考えたいと思うかもしれません。たとえば、クライアントに2つの呼び出しを行わせ、それぞれが1つの機能を実行させることも、クライアントに1つの呼び出しを行わせ、サーバー上で2つの呼び出しを行うこともできます。

このためのガイドは、これら2つの操作をどの程度緊密にバインドするかを示します。それらは常に一緒に実行されますか?クライアントが操作の1つを実行したい場合がある可能性がある場合は、柔軟性のために、2つのwcf呼び出しがあることは理にかなっています。したがって、クライアントはほぼ「ピックアンドミックス」を行うことができます。

クライアントが2つの電話をかけるのに適切な場所であると判断した場合は、バックグラウンドワーカーがお手伝いします。

いずれにせよ、物事の音によって、2つのことが完了するまで座って待機するコードを書く必要があります。私が過去に使用したアプローチは、システムイベントを使用することです。メソッドWaitHandle.WaitAllをチェックして、使用可能な機能の種類を確認してください。これらはかなり防弾の獣であり、wcfのようなものとは無関係ですが、その欠点は、リソースを消費することです。そのため、多く(数十)になる場合は、再考する必要があります。しかし、2つは問題になりません。

于 2012-12-05T12:58:09.490 に答える