Udostępnij za pośrednictwem


SqlDataReader.GetStream(Int32) Metoda

Definicja

Pobiera typy danych binarnych, obrazów, varbinary, UDT i wariantów jako 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

Parametry

i
Int32

Porządkowa kolumna oparta na zera.

Zwraca

Obiekt strumienia.

Wyjątki

Połączenie spada lub jest zamykane podczas pobierania danych.

Element SqlDataReader jest zamknięty podczas pobierania danych.

Nie ma danych gotowych do odczytu (na przykład pierwszy Read() nie został wywołany lub zwrócony fałsz).

Podjęto próbę odczytania wcześniej odczytanej kolumny w trybie sekwencyjnym.

W toku była operacja asynchroniczna. Dotyczy to wszystkich metod Get* podczas uruchamiania w trybie sekwencyjnym, ponieważ można je wywołać podczas odczytywania strumienia.

Próba odczytania kolumny, która nie istnieje.

Zwrócony typ nie był jednym z poniższych typów:

  • binarny

  • image (obraz)

  • varbinary

  • Udt

Uwagi

ReadTimeout wartość domyślna wartości CommandTimeout, ale można ją zmodyfikować ReadTimeout za pomocą polecenia GetStream.

Wartości null zostaną zwrócone jako puste (zero bajtów) Stream.

GetBytes zgłosi InvalidOperationException wyjątek w przypadku użycia obiektu zwróconego przez GetStream element , gdy SequentialAccess jest w życie.

SqlException wyjątki zgłaszane z Stream wyjątków są zgłaszane jako IOException wyjątki; sprawdź wyjątek wewnętrzny dla SqlExceptionelementu .

Następujące Stream elementy członkowskie nie są dostępne dla obiektów zwracanych przez :GetStream

  • BeginWrite

  • EndWrite

  • Długość

  • Position

  • Seek

  • SetLength

  • Write

  • WriteByte

  • WriteTimeout

Gdy właściwość ContextConnection=trueGetStream połączenia obsługuje tylko synchroniczne pobieranie danych dla dostępu sekwencyjnego (SequentialAccess) i niesekwencyjnego (Default).

Aby uzyskać więcej informacji, zobacz Obsługa przesyłania strumieniowego sqlClient.

Dotyczy