SqlDataReader.IsDBNullAsync(Int32, CancellationToken) Method

Definition

An asynchronous version of IsDBNull(Int32), which gets a value that indicates whether the column contains non-existent or missing values.

The cancellation token can be used to request that the operation be abandoned before the command timeout elapses. Exceptions will be reported via the returned Task object.

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

Parameters

i
Int32

The zero-based column to be retrieved.

cancellationToken
CancellationToken

The cancellation instruction, which propagates a notification that operations should be canceled. This does not guarantee the cancellation. A setting of CancellationToken.None makes this method equivalent to IsDBNull(Int32). The returned task must be marked as cancelled.

Returns

true if the specified column value is equivalent to DBNull otherwise false.

Exceptions

The connection drops or is closed during the data retrieval.

The SqlDataReader is closed during the data retrieval.

There is no data ready to be read (for example, the first Read() hasn't been called, or returned false).

Trying to read a previously read column in sequential mode.

There was an asynchronous operation in progress. This applies to all Get* methods when running in sequential mode, as they could be called while reading a stream.

Context Connection=true is specified in the connection string.

Trying to read a column that does not exist.

The cancellation token was canceled. This exception is stored into the returned task.

Remarks

For more information, see SqlClient Streaming Support.

This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as ArgumentException, are still thrown synchronously. For the stored exceptions, see the exceptions thrown by IsDBNull(Int32).

Applies to