要求メッセージに指定されたヘッダーを使用して、指定されたエンティティのバイナリ データ ストリームを設定します。
名前空間: System.Data.Services.Client
アセンブリ: Microsoft.Data.Services.Client (Microsoft.Data.Services.Client.dll)
構文
'宣言
Public Sub SetSaveStream ( _
entity As Object, _
stream As Stream, _
closeStream As Boolean, _
args As DataServiceRequestArgs _
)
'使用
Dim instance As DataServiceContext
Dim entity As Object
Dim stream As Stream
Dim closeStream As Boolean
Dim args As DataServiceRequestArgs
instance.SetSaveStream(entity, stream, _
closeStream, args)
public void SetSaveStream(
Object entity,
Stream stream,
bool closeStream,
DataServiceRequestArgs args
)
public:
void SetSaveStream(
Object^ entity,
Stream^ stream,
bool closeStream,
DataServiceRequestArgs^ args
)
member SetSaveStream :
entity:Object *
stream:Stream *
closeStream:bool *
args:DataServiceRequestArgs -> unit
public function SetSaveStream(
entity : Object,
stream : Stream,
closeStream : boolean,
args : DataServiceRequestArgs
)
パラメーター
- entity
型: System.Object
バイナリ ストリームが属するエンティティ。
- stream
型: System.IO.Stream
バイナリ データの読み取り元である Stream。
- closeStream
型: System.Boolean
SaveChanges メソッドの完了時にデータ ストリームを閉じるかどうかを決定する Boolean 値。
- args
型: System.Data.Services.Client.DataServiceRequestArgs
HTTP 要求メッセージの設定が含まれている DataServiceRequestArgs クラスのインスタンス。
例外
| 例外 | 条件 |
|---|---|
| ArgumentNullException | メソッドに指定されたパラメーターのいずれかが nullNULL 参照 (Visual Basic では Nothing) です。 |
| ArgumentException | entity はこの DataServiceContext インスタンスによって追跡されていません。 または entity に MediaEntryAttribute が適用されています。 |
説明
SetSaveStream メソッドは、entity に属するメディア リソースであるバイナリ ストリームを設定します。これはメディア リンク エントリと呼ばれます。
SetSaveStream メソッドを呼び出すと、エンティティがメディア リンク エントリとしてマークされます。 次に SaveChanges メソッドが呼び出されたときにストリームがデータ サービスに送信されるように、エンティティの状態も Modified に設定されます。
SetSaveStream メソッドは Stream を最後まで読み取ります。 Seek 操作は Stream では試行されません。
closeStream が true の場合、SaveChanges メソッドは制御を返す前にストリームを閉じます。 エラーが発生し、ストリームが読み取られなかった場合も、このストリームは閉じられます。
entity に MediaEntryAttribute が適用されている場合、メディア リソースをデータ ストリームにすることはできません。 entity のデータ ストリームを設定する前に、この属性を削除してください。
args で設定されているヘッダーの検証は実行されません。 そのため、要求の意味を変更する方法で HTTP ヘッダーを変更しないでください。