public List <Division> GetDivisions(QueryOptions queryOptions, SearchObject searchObject, out int totalCount) { return (_repository.Query(GetSearchCriteria(searchObject)) .Include(inc => inc.Company) .OrderBy(GetOrder(queryOptions.SortField, queryOptions.SortOrder)) .SelectPage(queryOptions.CurrentPage, queryOptions.PageSize, out totalCount) .ToList()); }
private Expression <Func <Division, bool> > GetSearchCriteria(SearchObject searchObject) { Expression <Func <Division, bool> > mainCriteria = c => c.IsActive == true; if (!string.IsNullOrEmpty(searchObject.DivisionName)) { mainCriteria = mainCriteria.And(c => c.DivisionName.StartsWith(searchObject.DivisionName)); } //if (searchObject.FromDate.HasValue) // mainCriteria = mainCriteria.And(c => c.CreatedDate.Value >= searchObject.FromDate.Value); //if (searchObject.ToDate.HasValue) // mainCriteria = mainCriteria.And(c => c.CreatedDate.Value <= searchObject.ToDate.Value); return(mainCriteria); }