SqlDataReader.GetStream(Int32) Método

Definição

Recupera tipos de dados binários, de imagem, varbinary, UDT e variantes como um 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

Parâmetros

i
Int32

O ordinal de coluna baseado em zero.

Retornos

Um objeto de fluxo.

Exceções

A conexão cai ou é fechada durante a recuperação de dados.

A SqlDataReader origem é fechada durante a recuperação de dados.

Não há dados prontos para serem lidos (por exemplo, o primeiro Read() não foi chamado ou retornado false).

Tentou ler uma coluna de leitura anterior no modo sequencial.

Havia uma operação assíncrona em andamento. Isso se aplica a todos os métodos Get* durante a execução no modo sequencial, pois eles podem ser chamados durante a leitura de um fluxo.

Tentando ler uma coluna que não existe.

O tipo retornado não foi um dos tipos abaixo:

  • binário
  • imagem
  • varbinary
  • udt

Comentários

ReadTimeout usa como padrão o valor de CommandTimeout; mas você pode modificar ReadTimeout por meio de GetStream.

Os valores nulos serão retornados como um vazio (zero bytes). Stream

GetBytes gerará uma exceção InvalidOperationException quando usada em um objeto retornado por GetStream quando SequentialAccess estiver em vigor.

SqlException as exceções geradas Stream são geradas como IOException exceções; verifique a exceção interna do SqlException.

Os seguintes Stream membros não estão disponíveis para objetos retornados por GetStream:

  • BeginWrite

  • EndWrite

  • Comprimento

  • Posição

  • Buscar a

  • SetLength

  • Escrever

  • Writebyte

  • Writetimeout

Quando a propriedade ContextConnection=truede conexão, GetStream só dá suporte à recuperação de dados síncrona para acesso sequencial (SequentialAccess) e não sequencial (Default).

Para obter mais informações, consulte o Suporte de Streaming do SqlClient.

Aplica-se a