namespace DMS.Core.Interfaces.Repositories;
///
/// 提供泛型数据访问操作的基础仓储接口。
///
/// 领域模型的类型。
public interface IBaseRepository where T : class
{
///
/// 异步根据ID获取单个实体。
///
/// 实体的主键ID。
/// 找到的实体,如果不存在则返回null。
Task GetByIdAsync(int id);
///
/// 异步获取所有实体。
///
/// 所有实体的列表。
Task> GetAllAsync();
///
/// 异步添加一个新实体。
///
/// 要添加的实体。
Task AddAsync(T entity);
///
/// 异步更新一个已存在的实体。
///
/// 要更新的实体。
Task UpdateAsync(T entity);
///
/// 异步根据ID删除一个实体。
///
/// 要删除的实体的主键ID。
Task DeleteAsync(T entity);
///
/// 异步批量更新实体。
///
/// 要更新的实体列表。
Task UpdateAsync(List entities);
///
/// 异步根据实体列表批量删除实体。
///
/// 要删除的实体列表。
Task DeleteAsync(List entrities);
///
/// 异步批量添加实体。
///
/// 要添加的实体列表。
Task> AddAsync(List entities);
}