DbDataReader.IsDBNullAsync Metoda

Definice

Asynchronně získá hodnotu, která označuje, zda sloupec obsahuje neexistující nebo chybějící hodnoty.

Přetížení

Name Description
IsDBNullAsync(Int32)

Asynchronně získá hodnotu, která označuje, zda sloupec obsahuje neexistující nebo chybějící hodnoty.

IsDBNullAsync(Int32, CancellationToken)

Asynchronně získá hodnotu, která označuje, zda sloupec obsahuje neexistující nebo chybějící hodnoty.

IsDBNullAsync(Int32)

Asynchronně získá hodnotu, která označuje, zda sloupec obsahuje neexistující nebo chybějící hodnoty.

public:
 System::Threading::Tasks::Task<bool> ^ IsDBNullAsync(int ordinal);
public System.Threading.Tasks.Task<bool> IsDBNullAsync(int ordinal);
member this.IsDBNullAsync : int -> System.Threading.Tasks.Task<bool>
Public Function IsDBNullAsync (ordinal As Integer) As Task(Of Boolean)

Parametry

ordinal
Int32

Sloupec založený na nule, který se má načíst.

Návraty

Vlastnost Task<TResult> , je-li Resulttrue zadaná hodnota sloupce ekvivalentní DBNull nebo false není-li.

Výjimky

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

nebo

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

nebo

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

nebo

Pokoušíte 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 je možné volat při čtení datového proudu.

Index sloupce je mimo rozsah.

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.

Tato metoda ukládá do úlohy všechny výjimky bez použití, které může vyvolat synchronní protějšek metody. Pokud je výjimka uložena do vrácené úlohy, tato výjimka bude vyvolána, když je úkol očekáván. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. V případě uložených výjimek se podívejte na výjimky vyvolané IsDBNull(Int32).

Platí pro

IsDBNullAsync(Int32, CancellationToken)

Asynchronně získá hodnotu, která označuje, zda sloupec obsahuje neexistující nebo chybějící hodnoty.

public:
 virtual System::Threading::Tasks::Task<bool> ^ IsDBNullAsync(int ordinal, System::Threading::CancellationToken cancellationToken);
public virtual System.Threading.Tasks.Task<bool> IsDBNullAsync(int ordinal, System.Threading.CancellationToken cancellationToken);
abstract member IsDBNullAsync : int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
override this.IsDBNullAsync : int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
Public Overridable Function IsDBNullAsync (ordinal As Integer, cancellationToken As CancellationToken) As Task(Of Boolean)

Parametry

ordinal
Int32

Sloupec založený na nule, který se má načíst.

cancellationToken
CancellationToken

Token pro zrušení asynchronní operace.

Návraty

Vlastnost Task<TResult> , je-li Resulttrue zadaná hodnota sloupce ekvivalentní DBNull nebo false není-li.

Výjimky

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

nebo

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

nebo

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

nebo

Pokoušíte 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 je možné volat při čtení datového proudu.

Index sloupce je mimo rozsah.

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. Tato metoda ukládá do úlohy všechny výjimky bez použití, které může vyvolat synchronní protějšek metody. Pokud je výjimka uložena do vrácené úlohy, tato výjimka bude vyvolána, když je úkol očekáván. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. V případě uložených výjimek se podívejte na výjimky vyvolané IsDBNull(Int32).

Platí pro