/// <summary> /// 根据主键删除一条记录 /// </summary> /// <param name="key">主键</param> /// <param name="cancellationToken">异步取消令牌</param> /// <returns>Task</returns> public virtual async Task DeleteExistsAsync(object key, CancellationToken cancellationToken = default) { var entity = await FindOrDefaultAsync(key, cancellationToken); if (entity == null) { throw DbHelpers.DataNotFoundException(); } await DeleteAsync(entity); }
/// <summary> /// 根据多个键查询一条记录 /// </summary> /// <param name="keyValues">多个键</param> /// <param name="cancellationToken">取消异步令牌</param> /// <returns>数据库中的实体</returns> public virtual async Task <TEntity> FindAsync(object[] keyValues, CancellationToken cancellationToken = default) { var entity = await FindOrDefaultAsync(keyValues, cancellationToken); return(entity ?? throw DbHelpers.DataNotFoundException()); }
/// <summary> /// 根据多个键查询一条记录 /// </summary> /// <param name="keyValues">多个键</param> /// <returns>数据库中的实体</returns> public virtual async Task <TEntity> FindAsync(params object[] keyValues) { var entity = await FindOrDefaultAsync(keyValues); return(entity ?? throw DbHelpers.DataNotFoundException()); }
/// <summary> /// 根据多个键查询一条记录 /// </summary> /// <param name="keyValues">多个键</param> /// <returns>数据库中的实体</returns> public virtual TEntity Find(params object[] keyValues) { var entity = FindOrDefault(keyValues) ?? throw DbHelpers.DataNotFoundException(); return(entity); }
/// <summary> /// 根据键查询一条记录 /// </summary> /// <param name="key">键</param> /// <returns>数据库中的实体</returns> public virtual TEntity Find(object key) { var entity = FindOrDefault(key) ?? throw DbHelpers.DataNotFoundException(); return(entity); }
/// <summary> /// 根据主键删除一条记录 /// </summary> /// <param name="key">主键</param> public virtual void DeleteExists(object key) { var entity = FindOrDefault(key) ?? throw DbHelpers.DataNotFoundException(); Delete(entity); }