using ECL142.BasicAuth.Domain.Entities.Commons; using System; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; using System.Text; using System.Threading.Tasks; namespace ECL142.BasicAuth.Domain.Repositories { /// /// 仓储基接口 /// public interface IBasicRepository : IRepository where TEntity : Entity { /// /// 获取所有记录列表 /// /// /// /// Task> GetListAsync(bool includeDetails = false, CancellationToken cancellationToken = default(CancellationToken)); /// /// 获取总记录数 /// /// /// Task GetCountAsync(CancellationToken cancellationToken = default(CancellationToken)); /// /// 翻页获取记录列表 /// /// /// /// /// /// /// Task> GetPagedListAsync(int skipCount, int maxResultCount, string sorting, bool includeDetails = false, CancellationToken cancellationToken = default(CancellationToken)); /// /// 根据筛选条件获取记录列表 /// /// /// /// /// /// /// /// Task> GetListAsync(Expression> filter, int skipCount, int maxResultCount, string sorting, bool includeDetails = true, CancellationToken cancellationToken = default); /// /// 根据筛选条件获取记录总数 /// /// /// /// Task GetCountAsync(Expression> filter, CancellationToken cancellationToken = default); /// /// 根据主键Id获取记录 /// /// /// /// /// Task FindAsync(TKey id, bool includeDetails = true, CancellationToken cancellationToken = default(CancellationToken)); /// /// 插入记录 /// /// /// /// /// Task InsertAsync(TEntity entity, bool autoSave = false, CancellationToken cancellationToken = default(CancellationToken)); /// /// 批量插入记录 /// /// /// /// /// Task InsertManyAsync(IEnumerable entities, bool autoSave = false, CancellationToken cancellationToken = default(CancellationToken)); /// /// 更新记录 /// /// /// /// /// Task UpdateAsync(TEntity entity, bool autoSave = false, CancellationToken cancellationToken = default(CancellationToken)); /// /// 批量更新记录 /// /// /// /// /// Task UpdateManyAsync(IEnumerable entities, bool autoSave = false, CancellationToken cancellationToken = default(CancellationToken)); /// /// 根据实体删除记录 /// /// /// /// /// Task DeleteAsync(TEntity entity, bool autoSave = false, CancellationToken cancellationToken = default(CancellationToken)); /// /// 批量删除记录 /// /// /// /// /// Task DeleteManyAsync(IEnumerable entities, bool autoSave = false, CancellationToken cancellationToken = default(CancellationToken)); /// /// 根据主键删除记录 /// /// /// /// /// Task DeleteAsync(TKey id, bool autoSave = false, CancellationToken cancellationToken = default(CancellationToken)); /// /// 根据主键,批量删除记录 /// /// /// /// /// Task DeleteManyAsync(IEnumerable ids, bool autoSave = false, CancellationToken cancellationToken = default(CancellationToken)); } }