public static IEnumerable <TEntity> ApplyOrder <TEntity, TResponse>(this IEnumerable <TEntity> query, AbstractPagedRequest <TEntity, TResponse> request) { var selector = request.Configuration.GetMap(request.Order.Name).Compile(); return(request.Order.Direction == Order.Dir.Ascending ? query.OrderBy(selector) : query.OrderByDescending(selector)); }
public static IQueryable <TEntity> ApplyLimit <TEntity, TResponse>(this IQueryable <TEntity> query, AbstractPagedRequest <TEntity, TResponse> request) => query.Skip(request.Skip).Take(request.Take);