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


SqlDataReader.GetFieldValue<T>(Int32) Метод

Определение

Синхронно получает значение заданного столбца в виде типа. GetFieldValueAsync<T>(Int32, CancellationToken) — асинхронная версия этого метода.

public:
generic <typename T>
 override T GetFieldValue(int i);
public override T GetFieldValue<T> (int i);
override this.GetFieldValue : int -> 'T
Public Overrides Function GetFieldValue(Of T) (i As Integer) As T

Параметры типа

T

Тип возвращаемого значения.

Параметры

i
Int32

Получаемый столбец.

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

T

Объект возвращаемого типа.

Исключения

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

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

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

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

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

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

Значение столбца было NULL (IsDBNull(Int32) == true) при извлечении типа, не являющегося типом SQL.

T не соответствует типу, возвращаемому SQL Server, или не может быть приведено.

Комментарии

T может быть одного из следующих типов:

Логическое значение Byte Char DateOnly (.NET 6 или более поздней версии)
Дата/время DateTimeOffset Decimal Double
Float Guid Int16 Int32
Int64 SqlBoolean SqlByte SqlDateTime
SqlDecimal SqlDouble SqlGuid SqlInt16
SqlInt32 SqlInt64 SqlMoney SqlSingle
SqlString STREAM Строка TextReader;
TimeOnly (.NET 6 или более поздней версии) XmlReader Определяемый пользователем тип, который может быть любым типом СРЕДЫ CLR, помеченным .SqlUserDefinedTypeAttribute

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

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