Example #1
0
 public IQueryable <Category> GetSortedFilteredList(CategoryListInput input, out int itemCount)
 {
     return(_categoryRepo.GetAll().FilterSortAndGetPage(
                config: input.AsFilterSortPageConfig(),
                args: input,
                itemCount: out itemCount));
 }
 public IActionResult GetList([FromQuery] CategoryListInput input)
 {
     return(Ok(_categoryService
               .GetSortedFilteredList(input, out var itemCount)
               .Select(CategoryListViewModel.GetFromCategory)
               .ToPagedResults(resultCount: itemCount)));
 }
Example #3
0
 public static IFilterSortPageConfig <Category, CategoryListInput, int> AsFilterSortPageConfig(this CategoryListInput input) =>
 new FilterSortPageConfigBuilder <Category, CategoryListInput, int>(
     primaryKeySelector: n => n.Id,
     pageSize: input.pageSize,
     pageNumber: input.pageNumber)
 .WithFiltering(FILTERS)
 .WithSorting(
     sortCriteria: input.sortCriteria ?? DEFAULT_SORT_CRITERIA,
     orderByStringKeySelectors: ORDER_BY_STRING
     )
 .Build();