DbDataReader.GetFieldValueAsync Metoda

Definice

Asynchronně získá hodnotu zadaného sloupce jako požadovaný typ.

Přetížení

Name Description
GetFieldValueAsync<T>(Int32)

Asynchronně získá hodnotu zadaného sloupce jako požadovaný typ.

GetFieldValueAsync<T>(Int32, CancellationToken)

Asynchronně získá hodnotu zadaného sloupce jako požadovaný typ.

GetFieldValueAsync<T>(Int32)

Zdroj:
DbDataReader.cs
Zdroj:
DbDataReader.cs
Zdroj:
DbDataReader.cs
Zdroj:
DbDataReader.cs
Zdroj:
DbDataReader.cs

Asynchronně získá hodnotu zadaného sloupce jako požadovaný typ.

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)

Parametry typu

T

Typ hodnoty, která se má vrátit.

Parametry

ordinal
Int32

Řadový sloupec založený na nule.

Návraty

Task<T>

Úkol, jehož Result hodnota obsahuje zadaný sloupec.

Výjimky

Během načítání dat došlo k ukončení nebo zavření připojení.

nebo

Čtečka dat se zavřela během načítání dat.

nebo

Nejsou připravena žádná data ke čtení (například první Read() nebyla volána nebo vrácena false).

nebo

Pokusili jste se přečíst dříve přečtený sloupec v sekvenčním režimu.

nebo

Probíhá asynchronní operace. To platí pro všechny metody Get_*_ při spuštění v sekvenčním režimu, protože se můžou volat při čtení datového proudu.

Index sloupce je mimo rozsah.

Hodnota vrácená databází se neshoduje nebo nelze přetypovat na Thodnotu .

Poznámky

Tato asynchronní metoda je nutná pouze k tomu, aby se zabránilo blokování volajícího vlákna při vytváření čtečky v sekvenčním režimu.

Pokud není zadaný sekvenční režim, měly by být všechny hodnoty sloupců dostupné v paměti při každém dokončení readAsync a volání synchronní verze metody by nemělo blokovat volající vlákno.

Výchozí implementace této asynchronní metody vyvolá její synchronní protějšek a vrátí dokončenou úlohu, která potenciálně blokuje volající vlákno.

Zprostředkovatelé dat, kteří podporují asynchronní programování , by měli přepsat výchozí implementaci pomocí asynchronních vstupně-výstupních operací.

Jiné metody a vlastnosti DbDataReader objektu by neměly být vyvolány, zatímco vrácená úloha ještě není dokončena.

Platí pro

GetFieldValueAsync<T>(Int32, CancellationToken)

Zdroj:
DbDataReader.cs
Zdroj:
DbDataReader.cs
Zdroj:
DbDataReader.cs
Zdroj:
DbDataReader.cs
Zdroj:
DbDataReader.cs

Asynchronně získá hodnotu zadaného sloupce jako požadovaný typ.

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)

Parametry typu

T

Typ hodnoty, která se má vrátit.

Parametry

ordinal
Int32

Řadový sloupec založený na nule.

cancellationToken
CancellationToken

Token pro zrušení asynchronní operace.

Návraty

Task<T>

Úkol, jehož Result hodnota obsahuje zadaný sloupec.

Výjimky

Během načítání dat došlo k ukončení nebo zavření připojení.

nebo

Čtečka dat se zavřela během načítání dat.

nebo

Nejsou připravena žádná data ke čtení (například první Read() nebyla volána nebo vrácena false).

nebo

Pokusili jste se přečíst dříve přečtený sloupec v sekvenčním režimu.

nebo

Probíhá asynchronní operace. To platí pro všechny metody Get_*_ při spuštění v sekvenčním režimu, protože se můžou volat při čtení datového proudu.

Index sloupce je mimo rozsah.

Hodnota vrácená databází se neshoduje nebo nelze přetypovat na Thodnotu .

Token zrušení byl zrušen. Tato výjimka je uložena do vrácené úlohy.

Poznámky

Tato asynchronní metoda je nutná pouze k tomu, aby se zabránilo blokování volajícího vlákna při vytváření čtečky v sekvenčním režimu.

Pokud není zadaný sekvenční režim, měly by být všechny hodnoty sloupců dostupné v paměti při každém dokončení readAsync a volání synchronní verze metody by nemělo blokovat volající vlákno.

Výchozí implementace této asynchronní metody vyvolá její synchronní protějšek a vrátí dokončenou úlohu, která potenciálně blokuje volající vlákno. Výchozí implementace také vrátí zrušený úkol, pokud byl předán již zrušený token zrušení.

Zprostředkovatelé dat, kteří podporují asynchronní programování , by měli přepsat výchozí implementaci pomocí asynchronních vstupně-výstupních operací.

Tato metoda přijímá token zrušení, který lze použít k vyžádání operace, aby byla zrušena dříve. Implementace můžou tento požadavek ignorovat.

Jiné metody a vlastnosti DbDataReader objektu by neměly být vyvolány, zatímco vrácená úloha ještě není dokončena.

Platí pro