SqlDataReader.GetFieldValueAsync<T>(Int32, CancellationToken) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Асинхронно получает значение заданного столбца в виде типа. GetFieldValue<T>(Int32) — синхронная версия этого метода.
public:
generic <typename T>
override System::Threading::Tasks::Task<T> ^ GetFieldValueAsync(int i, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<T> GetFieldValueAsync<T> (int i, System.Threading.CancellationToken cancellationToken);
override this.GetFieldValueAsync : int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'T>
Public Overrides Function GetFieldValueAsync(Of T) (i As Integer, cancellationToken As CancellationToken) As Task(Of T)
Параметры типа
- T
Тип возвращаемого значения.
Параметры
- i
- Int32
Получаемый столбец.
- cancellationToken
- CancellationToken
Инструкция отмены, распространяющая уведомление о том, что операции должны быть отменены. Не гарантирует отмену. Параметр CancellationToken.None
делает этот метод равным методу IsDBNull(Int32). Возвращаемая задача должна быть помечена как отмененная.
Возвращаемое значение
Объект возвращаемого типа.
Исключения
Соединение разъединяется или закрывается во время извлечения данных.
Объект SqlDataReader закрыт во время извлечения данных.
Не существует данных, готовых для чтения (например, первый объект Read() не был вызван или вернул значение false).
Сделана попытка чтения ранее считанного столбца в последовательном режиме.
Выполнялась асинхронная операция. Относится ко всем методам Get* при работе в последовательном режиме, так как они могут вызываться при чтении потока.
Context Connection=true
задается в строке подключения.
Попытка чтения столбца, который не существует.
Значение столбца было NULL (IsDBNull(Int32) == true
) при извлечении типа, не являющегося типом SQL.
T
не соответствует типу, возвращаемому SQL Server, или не может быть приведено.
Маркер отмены был отменен. Это исключение сохраняется в возвращаемой задаче.
Комментарии
T
может быть одного из следующих типов:
Логическое значение | Byte | Char | Дата/время |
DateTimeOffset | Decimal | Double | Float |
Guid | Int16 | Int32 | Int64 |
SqlBoolean | SqlByte | SqlDateTime | SqlDecimal |
SqlDouble | SqlGuid | SqlInt16 | SqlInt32 |
SqlInt64 | SqlMoney | SqlSingle | SqlString |
Строка | Определяемый пользователем тип, который может быть любым типом СРЕДЫ CLR, помеченным .SqlUserDefinedTypeAttribute |
Дополнительные сведения см. в разделе Поддержка потоковой передачи SqlClient.