SqlDataReader.GetStream(Int32) Metoda

Definice

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

Výjimky

Připojení se zahodí nebo se zavře během načítání dat.

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 nepravda).

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

Probíhá 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é volat při čtení datového proudu.

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

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

  • binární
  • bitová kopie
  • varbinary
  • Udt

Poznámky

ReadTimeout výchozí hodnota hodnoty CommandTimeout; ale můžete upravit ReadTimeout prostřednictvím GetStream.

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

GetBytes InvalidOperationException vyvolá výjimku, pokud se použije u objektu, který je vrácen, GetStream když SequentialAccess je v platnosti.

SqlExceptionvýjimky vyvolané z Stream jsou vyvolány jako IOException výjimky; zkontrolujte vnitřní výjimku .SqlException

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

  • ZačátekPsaní

  • EndWrite

  • Délka

  • Position

  • Hledat

  • NastavitDélku

  • Napiš

  • Writebyte

  • Writetimeout

Pokud vlastnost ContextConnection=truepřipojení podporuje GetStream pouze synchronní načítání dat pro sekvenční (SequentialAccess) i nekvenční (Default) přístup.

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

Platí pro