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


DbDataReader.GetFieldValueAsync Метод

Определение

Асинхронно возвращает значение указанного столбца в виде запрошенного типа.

Перегрузки

GetFieldValueAsync<T>(Int32)

Асинхронно возвращает значение указанного столбца в виде запрошенного типа.

GetFieldValueAsync<T>(Int32, CancellationToken)

Асинхронно возвращает значение указанного столбца в виде запрошенного типа.

GetFieldValueAsync<T>(Int32)

Исходный код:
DbDataReader.cs
Исходный код:
DbDataReader.cs
Исходный код:
DbDataReader.cs

Асинхронно возвращает значение указанного столбца в виде запрошенного типа.

public:
generic <typename T>
 System::Threading::Tasks::Task<T> ^ GetFieldValueAsync(int ordinal);
public System.Threading.Tasks.Task<T> GetFieldValueAsync<T> (int ordinal);
member this.GetFieldValueAsync : int -> System.Threading.Tasks.Task<'T>
Public Function GetFieldValueAsync(Of T) (ordinal As Integer) As Task(Of T)

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

T

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

Параметры

ordinal
Int32

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

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

Task<T>

Задача, Result которой содержит значение заданного столбца.

Исключения

Соединение было удалено или закрыто во время получения данных.

-или-

Модуль чтения данных был закрыт во время получения данных.

-или-

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

-или-

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

-или-

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

Индекс столбца находится за пределами диапазона.

Значение, возвращенное базой данных, не соответствует типу T или не может быть приведено к нему.

Комментарии

Этот асинхронный метод необходим только для того, чтобы избежать блокировки вызывающего потока при создании средства чтения в последовательном режиме.

Если последовательный режим не указан, все значения столбцов должны быть доступны в памяти при каждом завершении ReadAsync, а вызов синхронной версии метода не должен блокировать вызывающий поток.

Реализация этого асинхронного метода по умолчанию вызывает его синхронный аналог и возвращает завершенную задачу, потенциально блокируя вызывающий поток.

Поставщики данных, поддерживающие асинхронное программирование , должны переопределить реализацию по умолчанию с помощью асинхронных операций ввода-вывода.

Другие методы и свойства объекта DbDataReader не должны вызываться, когда возвращаемая задача еще не завершена.

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

GetFieldValueAsync<T>(Int32, CancellationToken)

Исходный код:
DbDataReader.cs
Исходный код:
DbDataReader.cs
Исходный код:
DbDataReader.cs

Асинхронно возвращает значение указанного столбца в виде запрошенного типа.

public:
generic <typename T>
 virtual System::Threading::Tasks::Task<T> ^ GetFieldValueAsync(int ordinal, System::Threading::CancellationToken cancellationToken);
public virtual System.Threading.Tasks.Task<T> GetFieldValueAsync<T> (int ordinal, System.Threading.CancellationToken cancellationToken);
abstract member GetFieldValueAsync : int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'T>
override this.GetFieldValueAsync : int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'T>
Public Overridable Function GetFieldValueAsync(Of T) (ordinal As Integer, cancellationToken As CancellationToken) As Task(Of T)

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

T

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

Параметры

ordinal
Int32

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

cancellationToken
CancellationToken

Токен для отмены асинхронной операции.

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

Task<T>

Задача, Result которой содержит значение заданного столбца.

Исключения

Соединение было удалено или закрыто во время получения данных.

-или-

Модуль чтения данных был закрыт во время получения данных.

-или-

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

-или-

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

-или-

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

Индекс столбца находится за пределами диапазона.

Значение, возвращенное базой данных, не соответствует типу T или не может быть приведено к нему.

Маркер отмены был отменен. Это исключение сохраняется в возвращаемой задаче.

Комментарии

Этот асинхронный метод необходим только для того, чтобы избежать блокировки вызывающего потока при создании средства чтения в последовательном режиме.

Если последовательный режим не указан, все значения столбцов должны быть доступны в памяти при каждом завершении ReadAsync, а вызов синхронной версии метода не должен блокировать вызывающий поток.

Реализация этого асинхронного метода по умолчанию вызывает его синхронный аналог и возвращает завершенную задачу, потенциально блокируя вызывающий поток. Реализация по умолчанию также возвращает отмененную задачу, если передан уже отмененный маркер отмены.

Поставщики данных, поддерживающие асинхронное программирование , должны переопределить реализацию по умолчанию с помощью асинхронных операций ввода-вывода.

Этот метод принимает токен отмены, который может использоваться для запроса ранней отмены операции. Реализации могут игнорировать данный запрос.

Другие методы и свойства объекта DbDataReader не должны вызываться, когда возвращаемая задача еще не завершена.

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