WinFormTools/WinformDevFramework.Repository/UnitOfWork/UnitOfWork.cs

52 lines
1.1 KiB
C#
Raw Normal View History

using Dm.Config;
using SqlSugar;
using SqlSugar.IOC;
using WinformDevFramework.IRepository.UnitOfWork;
namespace WinformDevFramework.Repository.UnitOfWork
{
public class UnitOfWork : IUnitOfWork
{
private readonly ISqlSugarClient _sqlSugarClient;
public UnitOfWork(ISqlSugarClient sqlSugarClient)
{
_sqlSugarClient = sqlSugarClient;
}
/// <summary>
/// 获取DB保证唯一性
/// </summary>
/// <returns></returns>
public SqlSugarScope GetDbClient()
{
// 必须要as后边会用到切换数据库操作
return _sqlSugarClient as SqlSugarScope;
}
public void BeginTran()
{
GetDbClient().BeginTran();
}
public void CommitTran()
{
try
{
GetDbClient().CommitTran(); //
}
catch (Exception ex)
{
GetDbClient().RollbackTran();
throw;
}
}
public void RollbackTran()
{
GetDbClient().RollbackTran();
}
}
}