SqlDataReader.GetFieldValueAsync<T>(Int32, CancellationToken) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Asynchroon haalt de waarde van de opgegeven kolom op als een type. GetFieldValue<T>(Int32) is de synchrone versie van deze 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)
Type parameters
- T
Het type van de waarde dat moet worden geretourneerd.
Parameters
- i
- Int32
De kolom die moet worden opgehaald.
- cancellationToken
- CancellationToken
De annuleringsinstructie, die een melding doorgeeft dat bewerkingen moeten worden geannuleerd. Dit garandeert geen annulering. Een instelling waarmee CancellationToken.None deze methode gelijk is aan IsDBNull(Int32). De geretourneerde taak moet worden gemarkeerd als geannuleerd.
Retouren
Het geretourneerde typeobject.
Uitzonderingen
De verbinding wordt verbroken of gesloten tijdens het ophalen van gegevens.
De SqlDataReader gegevens worden gesloten tijdens het ophalen van gegevens.
Er zijn geen gegevens die kunnen worden gelezen (de eerste Read() is bijvoorbeeld niet aangeroepen of retourneert onwaar).
Er is geprobeerd een eerder gelezen kolom te lezen in de sequentiële modus.
Er is een asynchrone bewerking uitgevoerd. Dit geldt voor alle Get*-methoden bij het uitvoeren in de sequentiële modus, omdat ze kunnen worden aangeroepen tijdens het lezen van een stream.
Context Connection=true is opgegeven in de verbindingsreeks.
Er wordt geprobeerd een kolom te lezen die niet bestaat.
De waarde van de kolom was null (IsDBNull(Int32) == true), het ophalen van een niet-SQL-type.
T komt niet overeen met het type dat wordt geretourneerd door SQL Server of kan niet worden gecast.
Het annuleringstoken is geannuleerd. Deze uitzondering wordt opgeslagen in de geretourneerde taak.
Opmerkingen
T kan een van de volgende typen zijn:
Booleaanse waarde, Byte, Char, DateTime, DateTimeOffset, Decimal, Double, Float, Guid, Int16, Int32, Int64, SqlBoolean, SqlByte, SqlDateTime, SqlDecimal, SqlDouble, SqlGuid, SqlInt16, SqlInt32, SqlInt64, SqlMoney, SqlSingle, SqlString, String of UDT (elk type CLR gemarkeerd met SqlUserDefinedTypeAttribute).
Zie Ondersteuning voor sqlClient-streaming voor meer informatie.