This commit is contained in:
owenchen committed 2026-05-12 10:09:31 +08:00
1 parent 31fbe199c1
commit 1c0c83af5f
469 files changed
+62544 -5

No files matched your search

@@ -0,0 +1,53 @@
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CloudBuilder.Core.DatabaseAccessor.Entity
{
/// <summary>
/// 业务单元操作接口
/// </summary>
public interface IUnitOfWork : IDisposable
{
/// <summary>
/// 获取 工作单元的事务是否已提交
/// </summary>
bool HasCommitted { get; }
/// <summary>
/// 添加DbContext共享事务
/// </summary>
void AddDbContext(DbContext dbContext);
/// <summary>
/// 获取指定数据实体的上下文类型
/// </summary>
/// <param name="entityType">实体类型</param>
/// <returns>实体所属上下文实例</returns>
DbContext GetDbContext();
/// <summary>
/// 对数据库连接开启事务
/// </summary>
void BeginOrUseTransaction();
/// <summary>
/// 对数据库连接开启事务
/// </summary>
/// <param name="cancellationToken">异步取消标记</param>
/// <returns></returns>
Task BeginOrUseTransactionAsync(CancellationToken cancellationToken = default);
/// <summary>
/// 提交当前上下文的事务更改
/// </summary>
void Commit();
/// <summary>
/// 回滚所有事务
/// </summary>
void Rollback();
}
}