Struct SqlAsyncScalarQueryReader
- Namespace
- LfrlAnvil.Sql.Statements
- Assembly
- LfrlAnvil.Sql.Core.dll
Represents an asynchronous type-erased scalar query reader.
public readonly record struct SqlAsyncScalarQueryReader : IEquatable<SqlAsyncScalarQueryReader>
- Implements
- Inherited Members
- Extension Methods
Constructors
SqlAsyncScalarQueryReader(SqlDialect, Func<IDataReader, CancellationToken, ValueTask<SqlScalarQueryResult>>)
Represents an asynchronous type-erased scalar query reader.
public SqlAsyncScalarQueryReader(SqlDialect Dialect, Func<IDataReader, CancellationToken, ValueTask<SqlScalarQueryResult>> Delegate)
Parameters
Dialect
SqlDialectSQL dialect with which this query reader is associated.
Delegate
Func<IDataReader, CancellationToken, ValueTask<SqlScalarQueryResult>>Underlying delegate.
Properties
Delegate
Underlying delegate.
public Func<IDataReader, CancellationToken, ValueTask<SqlScalarQueryResult>> Delegate { get; init; }
Property Value
Dialect
SQL dialect with which this query reader is associated.
public SqlDialect Dialect { get; init; }
Property Value
Methods
ReadAsync(IDataReader, CancellationToken)
Asynchronously reads a scalar value.
[Pure]
public ValueTask<SqlScalarQueryResult> ReadAsync(IDataReader reader, CancellationToken cancellationToken = default)
Parameters
reader
IDataReaderIDataReader to read from.
cancellationToken
CancellationTokenOptional CancellationToken.
Returns
- ValueTask<SqlScalarQueryResult>
ValueTask<TResult> that returns a read scalar value.