private static OrderByType GetOrderByType(BaseOrderByType order) { return(order switch { BaseOrderByType.Asc => OrderByType.Asc, BaseOrderByType.Desc => OrderByType.Desc, _ => OrderByType.Asc, });
/// <summary> /// Pages the specified offset. /// </summary> /// <param name="offset">The offset.</param> /// <param name="limit">The limit.</param> /// <param name="where">The where.</param> /// <param name="order">The order.</param> /// <param name="isAsc">The is asc.</param> /// <returns>Task<IEnumerable<T>>.</returns> public async Task <IEnumerable <T> > Page(int offset, int limit, Expression <Func <T, bool> > where, Expression <Func <T, object> > order, BaseOrderByType isAsc) => await Client.Queryable <T>() .WhereIF(where != null, where) .OrderByIF(order != null, order, GetOrderByType(isAsc)) .ToPageListAsync(offset, limit);
/// <summary> /// Gets the specified where. /// </summary> /// <param name="where">The where.</param> /// <param name="order">The order.</param> /// <param name="isAsc">The is asc.</param> /// <returns>Task<IEnumerable<T>>.</returns> public async Task <IEnumerable <T> > Get(Expression <Func <T, bool> > where, Expression <Func <T, object> > order, BaseOrderByType isAsc) => await Client.Queryable <T>() .WhereIF(where != null, where) .OrderByIF(order != null, order, GetOrderByType(isAsc)) .ToListAsync();