2009-03-04 5 views
2

WindowsサービスでホストされているWCFサービスがあります。今私はこのサービスにファイル転送機能を追加したいと思っていますが、私は以下の質問があります。WCFを使用してファイルを転送することに関するいくつかの質問

1:私はMSDNと読みました。 "ストリーム配信されたトランスポートで発生する操作は、最大で1つの入力または出力パラメータで契約を結ぶことができます。 "。複数のパラメータを持つ操作や何ができないのでしょうか?

2:転送モードにストリーミングを使用する場合、「内」または「外」のパラメータがコレクションである操作で転送されるデータのサイズに注意する必要がありますか?

3:ModeをStreamedに設定するには、TransferMode以外を変更する必要がありますか?

ありがとうございました。

答えて

3

this postを見て、WCFファイル転送に関する指示を見てください。 MTOMエンコーダを使用する必要があります。ポストにはいくつかの例があり、いくつかの理由があります。

  1. はい。
  2. すべてがMTOMを使用してエンコードされている限り、サイズは重要ではありません。バインディング設定でmaxReceivedMessageSizeを設定していることを確認してください。
  3. それはメッセージのメッセージ契約を作成することです。以下を参照してください:

サンプルメッセージコントラクト:

[MessageContract()] 
public class FileTransferRequest 
{ 
    [MessageHeader(MustUnderstand = true)] 
    public string FileName; 

    [MessageBodyMember(Order = 1)] 
    public System.IO.Stream Data; 
} 
関連する問題