Skip to main content
All docs
V25.1
  • .NET 8.0+

    Session.ExecuteScalarAsync(String, QueryParameterCollection, CancellationToken) Method

    Asynchronously executes the specified SQL query and returns the first column of the first row in the result set returned by the query.

    Namespace: DevExpress.Xpo

    Assembly: DevExpress.Xpo.v25.1.dll

    NuGet Package: DevExpress.Xpo

    Declaration

    public Task<object> ExecuteScalarAsync(
        string sql,
        QueryParameterCollection parameters,
        CancellationToken cancellationToken = default(CancellationToken)
    )

    Parameters

    Name Type Description
    sql String

    Specifies an SQL statement.

    parameters QueryParameterCollection

    Specifies query parameter values.

    Optional Parameters

    Name Type Default Description
    cancellationToken CancellationToken null

    A CancellationToken object that delivers a cancellation notice to the running operation.

    Returns

    Type Description
    Task<Object>

    A Task<TResult> that returns the first column of the first row in the query’s result set. A null reference (Nothing in Visual Basic) if the result set does not contain columns. DBNull.Value if the first column does not contain a value.

    Remarks

    Use the ExecuteScalarAsync method to query data stores for a single or aggregate value, without having to retrieve a result set.

    Use QueryParameterCollection to pass strongly-typed parameters. See examples here: Always Encrypted (SQL Server only).

    The connection provider automatically generates sequential parameter names (p0, p1, p2 …). To specify custom parameter names, use the overloaded ExecuteScalarAsync(String, String[], QueryParameterCollection, CancellationToken) method.

    To learn more about executing SQL statements in XPO, refer to Direct SQL Queries.

    Note

    The ExecuteScalarAsync method sends statements directly, so the correct statement syntax and parameter names format depends on a particular database server.

    See Also