using KH.WMS.Core.Database.Repositories;
using SqlSugar;
namespace KH.WMS.Core.Database;
///
/// 数据库上下文接口
///
public interface IDbContext : IDisposable
{
///
/// 数据库操作对象
///
ISqlSugarClient Db { get; }
///
/// 开始事务
///
Task BeginTransactionAsync(System.Data.IsolationLevel isolationLevel = System.Data.IsolationLevel.ReadCommitted);
///
/// 提交事务
///
Task CommitTransactionAsync();
///
/// 回滚事务
///
Task RollbackTransactionAsync();
///
/// 获取当前事务隔离级别
///
System.Data.IsolationLevel? CurrentIsolationLevel { get; }
///
/// 获取仓储
///
IRepository GetRepository()
where T : class
where TKey : struct;
}