Table of Contents

Struct SqlAsyncQueryReader

Namespace
LfrlAnvil.Sql.Statements
Assembly
LfrlAnvil.Sql.Core.dll

Represents an asynchronous type-erased query reader.

public readonly record struct SqlAsyncQueryReader : IEquatable<SqlAsyncQueryReader>
Implements
Inherited Members
Extension Methods

Constructors

SqlAsyncQueryReader(SqlDialect, Func<IDataReader, SqlQueryReaderOptions, CancellationToken, ValueTask<SqlQueryResult>>)

Represents an asynchronous type-erased query reader.

public SqlAsyncQueryReader(SqlDialect Dialect, Func<IDataReader, SqlQueryReaderOptions, CancellationToken, ValueTask<SqlQueryResult>> Delegate)

Parameters

Dialect SqlDialect

SQL dialect with which this query reader is associated.

Delegate Func<IDataReader, SqlQueryReaderOptions, CancellationToken, ValueTask<SqlQueryResult>>

Underlying delegate.

Properties

Delegate

Underlying delegate.

public Func<IDataReader, SqlQueryReaderOptions, CancellationToken, ValueTask<SqlQueryResult>> Delegate { get; init; }

Property Value

Func<IDataReader, SqlQueryReaderOptions, CancellationToken, ValueTask<SqlQueryResult>>

Dialect

SQL dialect with which this query reader is associated.

public SqlDialect Dialect { get; init; }

Property Value

SqlDialect

Methods

ReadAsync(IDataReader, SqlQueryReaderOptions?, CancellationToken)

Asynchronously reads a collection of rows.

[Pure]
public ValueTask<SqlQueryResult> ReadAsync(IDataReader reader, SqlQueryReaderOptions? options = null, CancellationToken cancellationToken = default)

Parameters

reader IDataReader

IDataReader to read from.

options SqlQueryReaderOptions?

Query reader options.

cancellationToken CancellationToken

Optional CancellationToken.

Returns

ValueTask<SqlQueryResult>

ValueTask<TResult> that returns a collection of read rows.