SqlDataReader.GetStream(Int32) Metod

Definition

Hämtar datatyperna binary, image, varbinary, UDT och variant som en 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

Parametrar

i
Int32

Den nollbaserade kolumnordningen.

Returer

Ett dataströmobjekt.

Undantag

Anslutningen avbryts eller stängs under datahämtningen.

SqlDataReader Stängs under datahämtningen.

Det finns inga data som är redo att läsas (till exempel har den första Read() inte anropats eller returnerats falskt).

Försökte läsa en tidigare läst kolumn i sekventiellt läge.

En asynkron åtgärd pågick. Detta gäller för alla Get*-metoder när de körs i sekventiellt läge, eftersom de kan anropas när du läser en dataström.

Försöker läsa en kolumn som inte finns.

Den returnerade typen var inte en av typerna nedan:

  • binary
  • bild
  • varbinary
  • Udt

Kommentarer

ReadTimeout standardvärdet för CommandTimeout; men du kan ändra ReadTimeout via GetStream.

Null-värden returneras som tomma (noll byte) Stream.

GetBytes skapar ett InvalidOperationException undantag när det används på ett objekt som returneras av GetStream när SequentialAccess det gäller.

SqlException undantag som genereras från Stream genereras som IOException undantag. Kontrollera det inre undantaget för SqlException.

Följande Stream medlemmar är inte tillgängliga för objekt som returneras av GetStream:

  • BeginWrite

  • EndWrite

  • Längd

  • Ställning

  • Sök

  • StällInLängd

  • Skriv

  • WriteByte

  • WriteTimeout

När anslutningsegenskapen ContextConnection=truestöder GetStream endast synkron datahämtning för både sekventiell (SequentialAccess) och icke-sekventiell (Default) åtkomst.

Mer information finns i Stöd för SqlClient-strömning.

Gäller för