SqlDataReader.GetStream(Int32) Metoda

Definice

Načte binární datové typy, image, varbinary, UDT a variant 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

Řadový sloupec založený na nule.

Návraty

Objekt streamu.

Výjimky

Během načítání dat dojde k ukončení nebo ukončení připojení.

Během SqlDataReader načítání dat se zavře.

Nejsou připravená žádná data ke čtení (například první Read() nebyla volána nebo vrácena false).

Pokusili jste se přečíst dříve přečtený sloupec v sekvenčním režimu.

Probíhala asynchronní operace. To platí pro všechny metody Get* při spuštění v sekvenčním režimu, protože je možné je volat při čtení streamu.

Pokoušíte se přečíst sloupec, který neexistuje.

Vrácený typ nebyl jedním z následujících typů:

  • binární

  • image

  • Varbinary

  • Udt

Poznámky

ReadTimeout Výchozí hodnota je hodnota CommandTimeout; ale můžete ji upravit ReadTimeout přes GetStream.

Hodnoty null budou vráceny jako prázdné (nula bajtů) Stream.

GetBytes vyvolá výjimku InvalidOperationException při použití u objektu vráceného uživatelem GetStream , když SequentialAccess je v platnosti.

SqlException Výjimky vyvolané z Stream jsou vyvolány jako IOException výjimky. Zkontrolujte vnitřní výjimku pro SqlException.

Následující Stream členy nejsou k dispozici pro objekty vrácené nástrojem GetStream:

  • BeginWrite

  • EndWrite

  • Délka

  • Position

  • Seek

  • SetLength

  • Write

  • WriteByte

  • WriteTimeout

Vlastnost připojení ContextConnection=trueGetStream podporuje pouze synchronní načítání dat pro sekvenční (SequentialAccess) i nesekvenční (Default) přístup.

Další informace najdete v tématu Podpora streamování SqlClient.

Platí pro