SqlDataReader.GetFieldValueAsync<T>(Int32, CancellationToken) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft den Wert der angegebenen Spalte asynchron als ein Typ ab. GetFieldValue<T>(Int32) ist die synchrone Version dieser Methode.
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)
Typparameter
- T
Der Typ des zurückzugebenden Werts.
Parameter
- i
- Int32
Die Spalte die abgerufen werden soll.
- cancellationToken
- CancellationToken
Die Abbruch-Anweisung, die eine Benachrichtigung verteilt, dass Vorgänge abgebrochen werden sollen. Dies garantiert keinen Abbruch. Die Einstellung CancellationToken.None
macht diese Methode äquivalent zu IsDBNull(Int32). Die zurückgegebene Aufgabe muss als abgebrochen gekennzeichnet werden.
Gibt zurück
Das zurückgegebene Typ-Objekts.
Ausnahmen
Die Verbindung wird während des Datenabrufs getrennt oder geschlossen.
Der SqlDataReader wird während des Datenabrufs geschlossen.
Es gibt keine Daten, die gelesen werden können (der erste Aufruf von Read() hat z. B. nicht stattgefunden oder "false" zurückgegeben).
Es wurde versucht, eine zuvor gelesene Spalte im sequenziellen Modus zu lesen.
Es gab einen aktiven asynchronen Vorgang. Dies gilt für alle Get*-Methoden bei der Ausführung im sequenziellen Modus, da sie aufgerufen werden können, während des Lesens eines Datenstroms.
Es wurde versucht, eine Spalte zu lesen, die nicht vorhanden ist.
Der Wert der Spalte ist NULL (IsDBNull(Int32) == true
) und ruft einen Nicht-SQL-Typ ab.
T
entspricht nicht dem Typ, der von SQL Server zurückgegeben wird, oder kann nicht konvertiert werden.
Hinweise
T
Dabei kann es sich um eine der folgenden Typen sein:
Boolean | Byte | Char | DateOnly (.NET 6 oder höher) |
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 oder höher) | XmlReader | UDT, bei dem es sich um einen beliebigen CLR-Typ handeln kann, der mit SqlUserDefinedTypeAttributegekennzeichnet ist. |
Weitere Informationen finden Sie unter SqlClient-Streamingunterstützung.