DbDataReader.IsDBNullAsync Metodo

Definizione

Ottiene in modo asincrono un valore che indica se la colonna contiene valori inesistenti o mancanti.

Overload

Nome Descrizione
IsDBNullAsync(Int32)

Ottiene in modo asincrono un valore che indica se la colonna contiene valori inesistenti o mancanti.

IsDBNullAsync(Int32, CancellationToken)

Ottiene in modo asincrono un valore che indica se la colonna contiene valori inesistenti o mancanti.

IsDBNullAsync(Int32)

Ottiene in modo asincrono un valore che indica se la colonna contiene valori inesistenti o mancanti.

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)

Parametri

ordinal
Int32

Colonna in base zero da recuperare.

Valori restituiti

Oggetto Task<TResult> la cui Result proprietà è true se il valore della colonna specificato è equivalente a DBNull o false in caso contrario.

Eccezioni

La connessione è stata eliminata o chiusa durante il recupero dei dati.

oppure

Il lettore di dati viene chiuso durante il recupero dei dati.

oppure

Non sono disponibili dati pronti per la lettura(ad esempio, il primo Read() non è stato chiamato o restituito false).

oppure

Tentativo di leggere una colonna di lettura precedente in modalità sequenziale.

oppure

È in corso un'operazione asincrona. Questo vale per tutti i metodi Get* durante l'esecuzione in modalità sequenziale, perché possono essere chiamati durante la lettura di un flusso.

L'indice di colonna non è compreso nell'intervallo.

Commenti

Questo metodo asincrono è necessario solo per evitare di bloccare il thread chiamante quando il lettore viene creato in modalità sequenziale.

Se non viene specificata la modalità sequenziale, tutti i valori di colonna devono diventare disponibili in memoria ogni volta che ReadAsync viene completato e chiamare la versione sincrona del metodo non deve bloccare il thread chiamante.

L'implementazione predefinita di questo metodo asincrono richiama la controparte sincrona e restituisce un'attività completata, bloccando potenzialmente il thread chiamante.

I provider di dati che supportano la programmazione asincrona devono eseguire l'override dell'implementazione predefinita usando operazioni di I/O asincrone.

Altri metodi e proprietà dell'oggetto DbDataReader non devono essere richiamati mentre l'attività restituita non è ancora stata completata.

Questo metodo archivia nell'attività che restituisce tutte le eccezioni non di utilizzo che la controparte sincrona del metodo può generare. Se un'eccezione viene archiviata nell'attività restituita, tale eccezione verrà generata quando l'attività è attesa. Le eccezioni di utilizzo, ad esempio ArgumentException, vengono comunque generate in modo sincrono. Per le eccezioni archiviate, vedere le eccezioni generate da IsDBNull(Int32).

Si applica a

IsDBNullAsync(Int32, CancellationToken)

Ottiene in modo asincrono un valore che indica se la colonna contiene valori inesistenti o mancanti.

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)

Parametri

ordinal
Int32

Colonna in base zero da recuperare.

cancellationToken
CancellationToken

Token per annullare l'operazione asincrona.

Valori restituiti

Oggetto Task<TResult> la cui Result proprietà è true se il valore della colonna specificato è equivalente a DBNull o false in caso contrario.

Eccezioni

La connessione è stata eliminata o chiusa durante il recupero dei dati.

oppure

Il lettore di dati viene chiuso durante il recupero dei dati.

oppure

Non sono disponibili dati pronti per la lettura(ad esempio, il primo Read() non è stato chiamato o restituito false).

oppure

Tentativo di leggere una colonna di lettura precedente in modalità sequenziale.

oppure

È in corso un'operazione asincrona. Questo vale per tutti i metodi Get* durante l'esecuzione in modalità sequenziale, perché possono essere chiamati durante la lettura di un flusso.

L'indice di colonna non è compreso nell'intervallo.

Il token di annullamento è stato annullato. Questa eccezione viene archiviata nell'attività restituita.

Commenti

Questo metodo asincrono è necessario solo per evitare di bloccare il thread chiamante quando il lettore viene creato in modalità sequenziale.

Se non viene specificata la modalità sequenziale, tutti i valori di colonna devono diventare disponibili in memoria ogni volta che ReadAsync viene completato e chiamare la versione sincrona del metodo non deve bloccare il thread chiamante.

L'implementazione predefinita di questo metodo asincrono richiama la controparte sincrona e restituisce un'attività completata, bloccando potenzialmente il thread chiamante. L'implementazione predefinita restituisce anche un'attività annullata se è stato passato un token di annullamento già annullato.

I provider di dati che supportano la programmazione asincrona devono eseguire l'override dell'implementazione predefinita usando operazioni di I/O asincrone.

Questo metodo accetta un token di annullamento che può essere usato per richiedere l'annullamento anticipato dell'operazione. Le implementazioni possono ignorare questa richiesta.

Altri metodi e proprietà dell'oggetto DbDataReader non devono essere richiamati mentre l'attività restituita non è ancora stata completata. Questo metodo archivia nell'attività che restituisce tutte le eccezioni non di utilizzo che la controparte sincrona del metodo può generare. Se un'eccezione viene archiviata nell'attività restituita, tale eccezione verrà generata quando l'attività è attesa. Le eccezioni di utilizzo, ad esempio ArgumentException, vengono comunque generate in modo sincrono. Per le eccezioni archiviate, vedere le eccezioni generate da IsDBNull(Int32).

Si applica a