Interface IRedbContext
Main database context interface for REDB.
Facade over connection, key generator, and bulk operations.
Replaces EF Core DbContext.
public interface IRedbContext : IAsyncDisposable, IDisposable
Properties
CurrentTransaction
Current active transaction (null if none).
IRedbTransaction? CurrentTransaction { get; }
Methods
ExecuteAsync(string, params object[])
Execute SQL command (INSERT, UPDATE, DELETE).
Task<int> ExecuteAsync(string sql, params object[] parameters)
ExecuteAtomicAsync(Func<Task>)
Execute operations atomically (all-or-nothing).
Task ExecuteAtomicAsync(Func<Task> operations)
ExecuteAtomicAsync<T>(Func<Task<T>>)
Execute operations atomically and return result.
Task<T> ExecuteAtomicAsync<T>(Func<Task<T>> operations)
ExecuteJsonAsync(string, params object[])
Execute SQL returning JSON.
Task<string?> ExecuteJsonAsync(string sql, params object[] parameters)
ExecuteJsonListAsync(string, params object[])
Execute SQL returning multiple JSON rows.
Task<List<string>> ExecuteJsonListAsync(string sql, params object[] parameters)
ExecuteScalarAsync<T>(string, params object[])
Execute SQL query and return scalar value.
Task<T?> ExecuteScalarAsync<T>(string sql, params object[] parameters)
QueryAsync<T>(string, params object[])
Execute SQL query and return list of mapped objects.
Task<List<T>> QueryAsync<T>(string sql, params object[] parameters) where T : new()
QueryFirstOrDefaultAsync<T>(string, params object[])
Execute SQL query and return first result or null.
Task<T?> QueryFirstOrDefaultAsync<T>(string sql, params object[] parameters) where T : class, new()
QueryScalarListAsync<T>(string, params object[])
Execute SQL query and return list of scalar values (first column only).
Task<List<T>> QueryScalarListAsync<T>(string sql, params object[] parameters)