WCF では、コントラクトをストリーミング モードに切り替えて、大きなメッセージを転送できます。
読んでテストした後、ストリーミングモードはデュプレックスチャネル(OneWayコールとコールバックインターフェースを備えたチャネル)では使用できないようです。
そうですか?デュプレックスとストリーミングは併用できませんか? それとも方法はありますか?
(大きなファイルをサービスにアップロードし、コールバックを使用して進行状況を報告しようとしています)
好奇心から、私はあなたの質問に対していくつかのテストを開始しようとしていましたが、Googleはあなたの質問によりよく答える可能性のある2つのサンプルを私に明らかにしました。
このCodeProjectの例は、デュプレックスチャネルを使用せずにプログレスバーを使用してファイル転送をストリーミングする方法を示しています。
このサンプルは、同じものの多くを示していますが、ストリームの処理がいくつか異なります。
また、WCFに関連するすべてのものにとって本当に良いリソースはiDesgin.netです。そこの主人公は、WCFに関する最高の本のいくつかを書いたJuvalLowyです。彼らはあなたがダウンロードできる何十もの優れたWCFの例を持っています(彼らはあなたにそれぞれのあなたの電子メールアドレスをうっとうしく尋ねますが)。さらに重要なことに、特にデュプレックスチャネルに関して、ServiceProcessが実行できることを大幅に拡張するServiceProcessExクラスも作成しました。(ただし、ストリーミングを多く扱っているかどうかはわかりません...まだ行ったことはありません)。
これのいくつかがあなたに役立つことを願っています。