SqlDataReader.GetStream(Int32) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
以 . 形式檢索二進位、影像、變異、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
零基列序數。
傳回
一個流物件。
例外狀況
在資料擷取過程中,連線會中斷或關閉。
在資料檢索時會關閉。SqlDataReader
沒有資料可供讀取(例如,第一個 Read() 資料尚未被呼叫或回傳為假)。
嘗試用順序模式閱讀之前讀過的專欄。
當時正在進行一項非同步操作。 這適用於所有在序列模式下執行的 Get* 方法,因為在讀取串流時可以呼叫這些方法。
試著閱讀一篇不存在的專欄。
備註
ReadTimeout預設值為 CommandTimeout;但你也可以透過 GetStream進行修改ReadTimeout。
空值則會以空值(零位元組) Stream的形式回傳。
GetBytes當 在 生效時GetStreamSequentialAccess,會對回傳物件產生InvalidOperationException例外。
SqlException 從 Stream 中產生的例外會作為例外拋 IOException 出;檢查內部例外是否為 SqlException。
以下 Stream 成員無法用於由 返回的 GetStream物件:
BeginWrite
EndWrite
長度
Position
尋求
設定長度
書寫
WriteByte
WriteTimeout
當連接屬性 ContextConnection=true時, GetStream 僅支援同步資料檢索,適用於順序SequentialAccess()與非順序Default()存取。
欲了解更多資訊,請參閱 SqlClient 串流支援。