Table of Contents

Struct SqlMultiDataReader

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

Represents a lightweight IDataReader container with multiple result sets.

public readonly struct SqlMultiDataReader : IDisposable
Implements
Inherited Members

Constructors

SqlMultiDataReader(IDataReader)

Creates a new SqlMultiDataReader instance.

public SqlMultiDataReader(IDataReader reader)

Parameters

reader IDataReader

Underlying data reader.

Properties

Reader

Underlying data reader.

public IDataReader Reader { get; }

Property Value

IDataReader

Methods

Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

public void Dispose()

Read(SqlQueryReader, SqlQueryReaderOptions?)

Reads the next record set.

[Pure]
public SqlQueryResult Read(SqlQueryReader reader, SqlQueryReaderOptions? options = null)

Parameters

reader SqlQueryReader

Query reader.

options SqlQueryReaderOptions?

Query reader options.

Returns

SqlQueryResult

Returns the next record set.

Read(SqlScalarQueryReader)

Reads the next scalar.

[Pure]
public SqlScalarQueryResult Read(SqlScalarQueryReader reader)

Parameters

reader SqlScalarQueryReader

Scalar query reader.

Returns

SqlScalarQueryResult

Returns the next scalar.

ReadAll(SqlQueryReader)

Reads all record sets.

[Pure]
public List<SqlQueryResult> ReadAll(SqlQueryReader reader)

Parameters

reader SqlQueryReader

Query reader.

Returns

List<SqlQueryResult>

Returns all record sets.

Read<TRow>(SqlQueryReader<TRow>, SqlQueryReaderOptions?)

Reads the next record set.

[Pure]
public SqlQueryResult<TRow> Read<TRow>(SqlQueryReader<TRow> reader, SqlQueryReaderOptions? options = null) where TRow : notnull

Parameters

reader SqlQueryReader<TRow>

Query reader.

options SqlQueryReaderOptions?

Query reader options.

Returns

SqlQueryResult<TRow>

Returns the next record set.

Type Parameters

TRow

Row type.

Read<T>(SqlScalarQueryReader<T>)

Reads the next scalar.

[Pure]
public SqlScalarQueryResult<T> Read<T>(SqlScalarQueryReader<T> reader)

Parameters

reader SqlScalarQueryReader<T>

Scalar query reader.

Returns

SqlScalarQueryResult<T>

Returns the next scalar.

Type Parameters

T

Scalar type.

Read<TResult>(Func<IDataReader, TResult>)

Invokes the provided delegate on the underlying Reader.

[Pure]
public TResult Read<TResult>(Func<IDataReader, TResult> reader)

Parameters

reader Func<IDataReader, TResult>

Delegate to invoke.

Returns

TResult

Returns the result of invocation of the delegate.

Type Parameters

TResult