SqlDataReader.GetStream(Int32) Metódus

Definíció

Bináris, képi, varbináris, UDT és variáns adattípusokat Streamkér le.

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

Paraméterek

i
Int32

A nulla alapú oszloprend.

Válaszok

Egy streamobjektum.

Kivételek

A kapcsolat megszakad vagy le van zárva az adatlekérés során.

Az SqlDataReader adatlekérés során a rendszer bezárja a elemet.

Nincs olvasásra kész adat (például az első Read() nem lett meghívva, vagy hamis értéket ad vissza).

Megpróbált beolvasni egy korábban beolvasott oszlopot szekvenciális módban.

Aszinkron művelet volt folyamatban. Ez az összes Get* metódusra vonatkozik, ha szekvenciális módban futnak, mivel a stream olvasása közben meghívhatók.

Nem létező oszlop olvasása.

A visszaadott típus nem az alábbi típusok egyike:

  • bináris
  • kép
  • varbinary
  • udt

Megjegyzések

ReadTimeout alapértelmezés szerint az ; értékre CommandTimeoutvan adva, de a módosítást ReadTimeout a következőn keresztül végezheti el GetStream:

A null értékek üresként (nulla bájtként) Streamjelennek meg.

GetBytes kivételt InvalidOperationException fog kelteni, ha egy olyan objektumon használja, amelyet GetStream akkor ad vissza, amikor SequentialAccess az érvényben van.

SqlException kivételként a rendszer kivételként ad Stream kivételt IOException ; ellenőrizze a belső kivételt a SqlException.

A következő Stream tagok nem érhetők el a következő által visszaadott GetStreamobjektumokhoz:

  • BeginWrite

  • EndWrite

  • Length

  • Position

  • Keresni

  • HosszBeállítás

  • Írj!

  • WriteByte

  • WriteTimeout

A kapcsolati tulajdonság ContextConnection=trueGetStream használatakor csak szekvenciális () és nem szekvenciális (SequentialAccessDefault) hozzáférés esetén támogatja a szinkron adatlekérést.

További információ: SqlClient Streaming Support.

A következőre érvényes: