Поделиться через


SqlDataReader.GetStream(Int32) Метод

Определение

Извлекает типы данных binary, image, varbinary, UDT и variant как 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

  • Изображение

  • varbinary

  • определяемый пользователем тип

Комментарии

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

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

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

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

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

  • BeginWrite

  • EndWrite

  • Длина

  • Положение

  • Seek

  • SetLength

  • запись

  • WriteByte

  • WriteTimeout

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

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

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