Partager via


DbDataReader.GetFieldValueAsync Méthode

Définition

Obtient de manière asynchrone la valeur de la colonne spécifiée comme type demandé.

Surcharges

GetFieldValueAsync<T>(Int32)

Obtient de manière asynchrone la valeur de la colonne spécifiée comme type demandé.

GetFieldValueAsync<T>(Int32, CancellationToken)

Obtient de manière asynchrone la valeur de la colonne spécifiée comme type demandé.

GetFieldValueAsync<T>(Int32)

Source:
DbDataReader.cs
Source:
DbDataReader.cs
Source:
DbDataReader.cs

Obtient de manière asynchrone la valeur de la colonne spécifiée comme type demandé.

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)

Paramètres de type

T

Type de la valeur à retourner.

Paramètres

ordinal
Int32

Numéro de colonne de base zéro.

Retours

Task<T>

Tâche dont Result contient la valeur de la colonne spécifiée.

Exceptions

La connexion a été supprimée ou fermée pendant la récupération des données.

- ou -

Le lecteur de données a été fermé pendant la récupération des données.

- ou -

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

- ou -

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

- ou -

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.

L'index de colonne est hors limites.

La valeur retournée par la base de données ne correspond pas ou ne peut pas être castée en T.

Remarques

Cette méthode asynchrone est uniquement nécessaire pour éviter de bloquer le thread appelant lorsque le lecteur est créé en mode séquentiel.

Si le mode séquentiel n’est pas spécifié, toutes les valeurs de colonne doivent être disponibles en mémoire chaque fois que ReadAsync se termine, et l’appel de la version synchrone de la méthode ne doit pas bloquer le thread appelant.

L’implémentation par défaut de cette méthode asynchrone appelle son équivalent synchrone et retourne une tâche terminée, ce qui bloque potentiellement le thread appelant.

Les fournisseurs de données qui prennent en charge la programmation asynchrone doivent remplacer l’implémentation par défaut à l’aide d’opérations d’E/S asynchrones.

Les autres méthodes et propriétés de l'objet DbDataReader ne doivent pas être appelées tant que la tâche retournée n'est pas terminée.

S’applique à

GetFieldValueAsync<T>(Int32, CancellationToken)

Source:
DbDataReader.cs
Source:
DbDataReader.cs
Source:
DbDataReader.cs

Obtient de manière asynchrone la valeur de la colonne spécifiée comme type demandé.

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)

Paramètres de type

T

Type de la valeur à retourner.

Paramètres

ordinal
Int32

Numéro de colonne de base zéro.

cancellationToken
CancellationToken

Jeton pour annuler l’opération asynchrone.

Retours

Task<T>

Tâche dont Result contient la valeur de la colonne spécifiée.

Exceptions

La connexion a été supprimée ou fermée pendant la récupération des données.

- ou -

Le lecteur de données a été fermé pendant la récupération des données.

- ou -

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

- ou -

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

- ou -

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.

L'index de colonne est hors limites.

La valeur retournée par la base de données ne correspond pas ou ne peut pas être castée en T.

Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.

Remarques

Cette méthode asynchrone est uniquement nécessaire pour éviter de bloquer le thread appelant lorsque le lecteur est créé en mode séquentiel.

Si le mode séquentiel n’est pas spécifié, toutes les valeurs de colonne doivent être disponibles en mémoire chaque fois que ReadAsync se termine, et l’appel de la version synchrone de la méthode ne doit pas bloquer le thread appelant.

L’implémentation par défaut de cette méthode asynchrone appelle son équivalent synchrone et retourne une tâche terminée, ce qui bloque potentiellement le thread appelant. L’implémentation par défaut retourne également une tâche annulée si un jeton d’annulation déjà annulé est passé.

Les fournisseurs de données qui prennent en charge la programmation asynchrone doivent remplacer l’implémentation par défaut à l’aide d’opérations d’E/S asynchrones.

Cette méthode accepte un jeton d'annulation qui peut être utilisé pour demander l'annulation de l'opération plus tôt que prévu. Les implémentations peuvent ignorer cette demande.

Les autres méthodes et propriétés de l'objet DbDataReader ne doivent pas être appelées tant que la tâche retournée n'est pas terminée.

S’applique à