Partager via


SqlDataReader.GetFieldValueAsync<T>(Int32, CancellationToken) Méthode

Définition

Obtient, de manière asynchrone, la valeur de la colonne spécifiée sous la forme d'un type. GetFieldValue<T>(Int32) est la version synchrone de cette méthode.

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)

Paramètres de type

T

Type de la valeur à retourner.

Paramètres

i
Int32

Colonne à récupérer.

cancellationToken
CancellationToken

Instruction d'annulation, qui propage une notification que les opérations doivent être annulées. Cela ne garantit pas l'annulation. Un paramètre CancellationToken.None rend cette méthode équivalente à IsDBNull(Int32). La tâche retournée doit être marquée comme annulée.

Retours

Task<T>

Objet de type retourné.

Exceptions

La connexion est perdue ou est fermée pendant la récupération des données.

Fermeture de SqlDataReader au cours de la récupération des données.

Il n'existe aucune donnée prête à être lue (par exemple, le premier Read() n'a pas été appelé ou retourné comme false).

Tentative de lecture d'une colonne précédemment lue en mode séquentiel.

Il y avait une opération asynchrone en cours. Cela s'applique à toutes les méthodes Get* exécutées en mode séquentiel, car elles peuvent être appelées pendant la lecture d'un flux de données.

Tentative de lecture d'une colonne qui n'existe pas.

La valeur de la colonne était Null (IsDBNull(Int32) == true), récupération d’un type autre que SQL.

T ne correspond pas au type retourné par SQL Server ou ne peut pas être casté.

Remarques

T il peut s’agir de l’un des types suivants :

Booléen Byte Char DateOnly (.NET 6 ou version ultérieure)
DateTime DateTimeOffset Decimal Double
Float Guid Int16 Int32
Int64 SqlBoolean SqlByte SqlDateTime
SqlDecimal SqlDouble SqlGuid SqlInt16
SqlInt32 SqlInt64 SqlMoney Sqlsingle
SqlString STREAM String TextReader
TimeOnly (.NET 6 ou version ultérieure) XmlReader UDT, qui peut être n’importe quel type CLR marqué avec SqlUserDefinedTypeAttribute.

Pour plus d’informations, consultez Prise en charge de SqlClient Streaming.

S’applique à