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
readerIDataReaderUnderlying data reader.
Properties
Reader
Underlying data reader.
public IDataReader Reader { get; }
Property Value
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
readerSqlQueryReaderQuery reader.
optionsSqlQueryReaderOptions?Query reader options.
Returns
- SqlQueryResult
Returns the next record set.
Read(SqlScalarQueryReader)
Reads the next scalar.
[Pure]
public SqlScalarQueryResult Read(SqlScalarQueryReader reader)
Parameters
readerSqlScalarQueryReaderScalar query reader.
Returns
- SqlScalarQueryResult
Returns the next scalar.
ReadAll(SqlQueryReader)
Reads all record sets.
[Pure]
public List<SqlQueryResult> ReadAll(SqlQueryReader reader)
Parameters
readerSqlQueryReaderQuery 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
readerSqlQueryReader<TRow>Query reader.
optionsSqlQueryReaderOptions?Query reader options.
Returns
- SqlQueryResult<TRow>
Returns the next record set.
Type Parameters
TRowRow type.
Read<T>(SqlScalarQueryReader<T>)
Reads the next scalar.
[Pure]
public SqlScalarQueryResult<T> Read<T>(SqlScalarQueryReader<T> reader)
Parameters
readerSqlScalarQueryReader<T>Scalar query reader.
Returns
- SqlScalarQueryResult<T>
Returns the next scalar.
Type Parameters
TScalar type.
Read<TResult>(Func<IDataReader, TResult>)
Invokes the provided delegate on the underlying Reader.
[Pure]
public TResult Read<TResult>(Func<IDataReader, TResult> reader)
Parameters
readerFunc<IDataReader, TResult>Delegate to invoke.
Returns
- TResult
Returns the result of invocation of the delegate.
Type Parameters
TResult