WCFを使用して大規模なファイルストリーミングアプリケーションを実装しています。WCFアプリケーションでMaxReceivedMessageSizeとMaxBufferSizeを設定する際の問題
私はMaxReceivedMessageSizeとのMaxBufferSizeのコンフィギュレーションを設定したとき、私は問題を得ました。これらのパラメータが同じ場合、システムは正常に動作します。しかし、別の値を選択すると、エラーメッセージが表示されます。
TransferMode.Buffered、MaxReceivedMessageSize、MaxBufferSizeは同じ値でなければなりません。例えば
しかし、次のように、私はhttp://msdn.microsoft.com/en-us/library/ms733742.aspxに情報を混同し、
、 サイズは4ギガバイトまでのファイルを受信し、ローカルディスクに保存する必要がありますあなたのサービスを想定。また、あなたのメモリ は、 に64 KBのデータだけをバッファリングできるように制限されているとします。次に、MaxReceivedMessageSizeを4GBに、 MaxBufferSizeを64KBに設定します。また、サービスの実装では、 を64 KBチャンクの着信ストリームからのみ読み込み、 は、前のチャンクを ディスクに書き込み、メモリから破棄する前に次のチャンクを読み取らないようにする必要があります。 MaxBufferSizeを64 KBに設定します。 また、サービスの実装では、64 KBのチャンクの入ったストリームからのみ を読み、次の チャンクを読み取ってから前のものをディスクに書き込んだ後、メモリから を破棄してください。
誰でもこの問題の理由を説明できますか?