SqlDataReader.GetStream(Int32) Метод

Определение

Извлекает двоичные, образы, varbinary, UDT и вариантные типы данных в виде 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

Параметры

i
Int32

Порядковый номер столбца от нуля.

Возвращаемое значение

Объект потока.

Исключения

Подключение удаляется или закрывается во время извлечения данных.

Он SqlDataReader закрывается во время извлечения данных.

Нет данных, готовых к чтению (например, первый Read() не был вызван или возвращен false).

Попыталась считывать столбец ранее считываемого в последовательном режиме.

Выполняется асинхронная операция. Это относится ко всем методам Get* при выполнении в последовательном режиме, так как они могут вызываться при чтении потока.

Попытка считывать столбец, который не существует.

Возвращаемый тип не был одним из следующих типов:

  • binary
  • image
  • varbinary
  • udt

Комментарии

ReadTimeout по умолчанию используется значение CommandTimeout; но можно изменить ReadTimeout с помощью GetStream.

Значения NULL будут возвращены как пустые (ноль байтов). Stream

GetBytes вызывает InvalidOperationException исключение при использовании объекта, возвращаемого GetStreamSequentialAccess при действии.

SqlException исключения, создаваемые из Stream них, создаются в виде IOException исключений; проверьте внутреннее исключение для этого SqlExceptionпараметра.

Следующие Stream элементы недоступны для объектов, возвращаемых GetStream:

  • BeginWrite

  • Конец записи

  • Length

  • Position

  • Искать

  • УстановитьДлину

  • Напишите

  • WriteByte

  • WriteTimeout

Если свойство ContextConnection=trueподключения поддерживает GetStream синхронное извлечение данных для последовательногоSequentialAccess () и не последовательногоDefault () доступа.

Дополнительные сведения см. в разделе "Поддержка потоковой передачи SqlClient".

Применяется к