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.