Courses.Buisness.CategoryService.GetCategorys C# (CSharp) Method

GetCategorys() public method

Получение категорий на заданной странице с заданными фильтрами.
public GetCategorys ( int page, int pageSize, List fieldFilters = null, Filtering sortFilter = null ) : CategoryCollectionViewModel
page int Номер страницы
pageSize int Размер страницы
fieldFilters List Список фильтров
sortFilter Filtering Порядок сортировки
return Courses.ViewModels.CategoryCollectionViewModel
        public CategoryCollectionViewModel GetCategorys(int page, int pageSize,
            List<Filtering.FieldFilter> fieldFilters = null,
             Filtering.SortFilter sortFilter = null)
        {
            IEnumerable<CategoryViewModel> categorys;
            int total;
            if (fieldFilters != null && sortFilter != null)
            {
                var newSortFilter = new SortFilter() { SortOrder = sortFilter.SortOrder };
                var expression = filterFactory.GetFilterExpression(fieldFilters);
                categorys = categoryRepository.Get(page, pageSize, expression, newSortFilter).Select(Convert);
                total = categoryRepository.Count(expression);
            }
            else
            {
                categorys = categoryRepository.Get(page, pageSize, x => true).Select(Convert);
                total = categoryRepository.Count(x => true);
            }
            var pageInfo = new PageInfo()
            {
                PageNumber = page,
                PageSize = pageSize,
                TotalItems = total
            };
            return new CategoryCollectionViewModel() { Categorys = categorys, PageInfo = pageInfo };
        }

Usage Example

Ejemplo n.º 1
0
 public void GetCategorysTest()
 {
     ICategoryService _categoryService = new CategoryService(new CategoryRepository(), new CategoryFilterFactory());
     CategoryCollectionViewModel actual = _categoryService.GetCategorys(1, 5);
     Assert.IsNotNull(actual);
 }