SqlDataReader.GetStream(Int32) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
バイナリ、イメージ、varbinary、UDT、およびバリアント データ型を Streamとして取得します。
public:
override System::IO::Stream ^ GetStream(int i);
public override System.IO.Stream GetStream(int i);
override this.GetStream : int -> System.IO.Stream
Public Overrides Function GetStream (i As Integer) As Stream
パラメーター
- i
- Int32
0 から始まる列の序数。
返品
ストリーム オブジェクト。
例外
データの取得中に接続が切断されるか、閉じられます。
SqlDataReaderは、データの取得中に閉じられます。
読み取る準備ができているデータがありません (たとえば、最初の Read() が呼び出されていないか、false が返されました)。
シーケンシャル モードで以前に読み取った列を読み取ろうとしました。
非同期操作が進行中でした。 これは、ストリームの読み取り中に呼び出すことができるため、シーケンシャル モードで実行されている場合は、すべての Get* メソッドに適用されます。
存在しない列を読み取ろうとしています。
注釈
ReadTimeoutは既定で CommandTimeout の値になりますが、GetStreamを使用してReadTimeoutを変更できます。
null 値は、空の (0 バイト) Streamとして返されます。
GetBytesは、SequentialAccessが有効な場合にGetStreamによって返されるオブジェクトで使用すると、InvalidOperationException例外を発生させます。
SqlException Streamから発生した例外は、IOException例外としてスローされます。SqlExceptionの内部例外を確認してください。
次の Stream メンバーは、 GetStreamによって返されるオブジェクトでは使用できません。
書き込み開始
EndWrite
長さ
職位
完璧さ
長さを設定
書き込む
WriteByte
WriteTimeout
接続プロパティが ContextConnection=true場合、 GetStream はシーケンシャル (SequentialAccess) アクセスと非シーケンシャル (Default) アクセスの両方に対してのみ同期データ取得をサポートします。
詳細については、「 SqlClient ストリーミング サポート」を参照してください。