protected abstract PagedResult <TEntity> DoFindAll(ISpecification <TEntity> specification, Expression <Func <TEntity, dynamic> > sortPredicate, LCL.SortOrder sortOrder, int pageNumber, int pageSize);
protected abstract IQueryable <TEntity> DoFindAll(ISpecification <TEntity> specification, Expression <Func <TEntity, dynamic> > sortPredicate, LCL.SortOrder sortOrder, params Expression <Func <TEntity, dynamic> >[] eagerLoadingProperties);
protected abstract IQueryable <TEntity> DoFindAll(ISpecification <TEntity> specification, Expression <Func <TEntity, dynamic> > sortPredicate, LCL.SortOrder sortOrder);
public PagedResult <TEntity> FindAll(ISpecification <TEntity> specification, Expression <Func <TEntity, dynamic> > sortPredicate, LCL.SortOrder sortOrder, int pageNumber, int pageSize) { return(this.DoFindAll(specification, sortPredicate, sortOrder, pageNumber, pageSize)); }
public IQueryable <TEntity> FindAll(ISpecification <TEntity> specification, Expression <Func <TEntity, dynamic> > sortPredicate, LCL.SortOrder sortOrder) { return(this.DoFindAll(specification, sortPredicate, sortOrder)); }
protected override IQueryable <TEntity> DoFindAll(ISpecification <TEntity> specification, Expression <Func <TEntity, dynamic> > sortPredicate, LCL.SortOrder sortOrder) { var query = efContext.Context.Set <TEntity>().Where(specification.GetExpression()); if (sortPredicate != null) { switch (sortOrder) { case SortOrder.Ascending: return(query.SortBy(sortPredicate)); case SortOrder.Descending: return(query.SortByDescending(sortPredicate)); default: break; } } return(query); }