Table of Contents

Class LoggedDatabase

Namespace
The.SQL
Assembly
Instagile.dll
public class LoggedDatabase : IDatabase
Inheritance
LoggedDatabase
Implements
Derived
Inherited Members
Extension Methods

Constructors

LoggedDatabase(IDatabase, ILogger, TimeSpan?)

public LoggedDatabase(IDatabase inner, ILogger logger, TimeSpan? slowQueryThreshold)

Parameters

inner IDatabase
logger ILogger
slowQueryThreshold TimeSpan?

Properties

Name

public string Name { get; }

Property Value

string

Server

public string Server { get; }

Property Value

string

Methods

Batch(IEnumerable<BatchQuery>, TimeSpan?)

Execute multiple queries

public void Batch(IEnumerable<BatchQuery> queries, TimeSpan? timeout)

Parameters

queries IEnumerable<BatchQuery>
timeout TimeSpan?

BatchAsync(IEnumerable<BatchQuery>, TimeSpan?, CancellationToken)

Execute multiple queries asynchronously

public Task BatchAsync(IEnumerable<BatchQuery> queries, TimeSpan? timeout, CancellationToken ct = default)

Parameters

queries IEnumerable<BatchQuery>
timeout TimeSpan?
ct CancellationToken

Returns

Task

BulkExecute(string, TimeSpan?, IReadOnlyList<DbParameter[]>)

Execute a command repeatedly

public int BulkExecute(string commandText, TimeSpan? timeout, IReadOnlyList<DbParameter[]> parameterSets)

Parameters

commandText string
timeout TimeSpan?
parameterSets IReadOnlyList<DbParameter[]>

Returns

int

Affected row count

BulkExecuteAsync(string, TimeSpan?, CancellationToken, IReadOnlyList<DbParameter[]>)

Execute a command repeatedly, asynchronously

public Task<int> BulkExecuteAsync(string commandText, TimeSpan? timeout, CancellationToken cancellationToken, IReadOnlyList<DbParameter[]> parameterSets)

Parameters

commandText string
timeout TimeSpan?
cancellationToken CancellationToken
parameterSets IReadOnlyList<DbParameter[]>

Returns

Task<int>

Affected row count

Execute(string, TimeSpan?, params DbParameter[])

Execute a command

public int Execute(string commandText, TimeSpan? timeout, params DbParameter[] parameters)

Parameters

commandText string
timeout TimeSpan?
parameters DbParameter[]

Returns

int

Affected row count

ExecuteAsync(string, TimeSpan?, CancellationToken, params DbParameter[])

Execute a command asynchronously

public Task<int> ExecuteAsync(string commandText, TimeSpan? timeout, CancellationToken cancellationToken, params DbParameter[] parameters)

Parameters

commandText string
timeout TimeSpan?
cancellationToken CancellationToken
parameters DbParameter[]

Returns

Task<int>

Affected row count

GetTransaction()

Begin a sequence of commands and queries wrapped in a transaction

public ITransaction GetTransaction()

Returns

ITransaction

QueryAsync<TResult>(string, TimeSpan?, CancellationToken, CommandBehavior, Func<DbDataReader, TResult>, params DbParameter[])

Execute a query asynchronously

public Task<TResult> QueryAsync<TResult>(string queryText, TimeSpan? timeout, CancellationToken cancellationToken, CommandBehavior behaviour, Func<DbDataReader, TResult> map, params DbParameter[] parameters)

Parameters

queryText string
timeout TimeSpan?
cancellationToken CancellationToken
behaviour CommandBehavior
map Func<DbDataReader, TResult>
parameters DbParameter[]

Returns

Task<TResult>

Query results

Type Parameters

TResult

Query<TResult>(string, TimeSpan?, CommandBehavior, Func<DbDataReader, TResult>, params DbParameter[])

Execute a query

public TResult Query<TResult>(string queryText, TimeSpan? timeout, CommandBehavior behaviour, Func<DbDataReader, TResult> map, params DbParameter[] parameters)

Parameters

queryText string
timeout TimeSpan?
behaviour CommandBehavior
map Func<DbDataReader, TResult>
parameters DbParameter[]

Returns

TResult

Query results

Type Parameters

TResult

Stream(string, TimeSpan?, Func<DbDataReader, Stream>, params DbParameter[])

Execute a query which returns a forward-only stream, asynchronously

public Stream Stream(string queryText, TimeSpan? timeout, Func<DbDataReader, Stream> map, params DbParameter[] parameters)

Parameters

queryText string
timeout TimeSpan?
map Func<DbDataReader, Stream>
parameters DbParameter[]

Returns

Stream

StreamAsync(string, TimeSpan?, CancellationToken, Func<DbDataReader, Stream?>, params DbParameter[])

Execute a query which returns a forward-only stream, asynchronously

public Task<Stream> StreamAsync(string queryText, TimeSpan? timeout, CancellationToken cancellationToken, Func<DbDataReader, Stream?> map, params DbParameter[] parameters)

Parameters

queryText string
timeout TimeSpan?
cancellationToken CancellationToken
map Func<DbDataReader, Stream>
parameters DbParameter[]

Returns

Task<Stream>

Stream<TResult>(string, TimeSpan?, Func<IDataRecord, TResult>, params DbParameter[])

Produce a forward-only enumerable which will execute a query

public IEnumerable<TResult> Stream<TResult>(string queryText, TimeSpan? timeout, Func<IDataRecord, TResult> map, params DbParameter[] parameters)

Parameters

queryText string
timeout TimeSpan?
map Func<IDataRecord, TResult>
parameters DbParameter[]

Returns

IEnumerable<TResult>

Query results

Type Parameters

TResult