SqlDataReader.GetFieldValueAsync<T>(Int32, CancellationToken) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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
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.
Context Connection=true
est spécifié dans la chaîne de connexion.
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é.
Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.
Remarques
T
peut être l’un des types suivants :
Booléen | Byte | Char | DateTime |
DateTimeOffset | Decimal | Double | Float |
Guid | Int16 | Int32 | Int64 |
SqlBoolean | SqlByte | SqlDateTime | SqlDecimal |
SqlDouble | SqlGuid | SqlInt16 | SqlInt32 |
SqlInt64 | SqlMoney | Sqlsingle | SqlString |
String | UDT, qui peut être n’importe quel type CLR marqué avec SqlUserDefinedTypeAttribute. |
Pour plus d’informations, consultez Prise en charge de SqlClient Streaming.