SqlCommand.ExecuteScalarAsync(CancellationToken) Method

Definition

An asynchronous version of ExecuteScalar(), which executes the query asynchronously and returns the first column of the first row in the result set returned by the query. Additional columns or rows are ignored.

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<System::Object ^> ^ ExecuteScalarAsync(System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<object> ExecuteScalarAsync (System.Threading.CancellationToken cancellationToken);
override this.ExecuteScalarAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<obj>
Public Overrides Function ExecuteScalarAsync (cancellationToken As CancellationToken) As Task(Of Object)

Parameters

cancellationToken
CancellationToken

The cancellation instruction.

Returns

A task representing the asynchronous operation.

Exceptions

A SqlDbType other than Binary or VarBinary was used when Value was set to Stream. For more information about streaming, see SqlClient Streaming Support.

-or-

A SqlDbType other than Char, NChar, NVarChar, VarChar, or Xml was used when Value was set to TextReader.

-or-

A SqlDbType other than Xml was used when Value was set to XmlReader.

Calling ExecuteScalarAsync(CancellationToken) more than once for the same instance before task completion.

-or-

The SqlConnection closed or dropped during a streaming operation. For more information about streaming, see SqlClient Streaming Support.

-or-

Context Connection=true is specified in the connection string.

SQL Server returned an error while executing the command text.

-or-

A timeout occurred during a streaming operation. For more information about streaming, see SqlClient Streaming Support.

An error occurred in a Stream, XmlReader or TextReader object during a streaming operation. For more information about streaming, see SqlClient Streaming Support.

The Stream, XmlReader or TextReader object was closed during a streaming operation. For more information about streaming, see SqlClient Streaming Support.

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

Remarks

For more information about asynchronous programming in the .NET Framework Data Provider for SQL Server, see Asynchronous Programming.

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 ExecuteScalar().

Applies to

See also