public async Task <PrintingEditionPageDataModel> GetPageAsync( PageModel <PrintingEditionFilterModel> pageModel) { var printingEditions = await _printingEditionRepository.GetPageAsync(new PageOptions <PrintingEditionFilter> { Filter = pageModel.Filter == null ? null : new PrintingEditionFilter { Title = pageModel.Filter.Title, Description = pageModel.Filter.Description, Currency = pageModel.Filter.Currency, MinPrice = pageModel.Filter.MinPrice, MaxPrice = pageModel.Filter.MaxPrice, Types = pageModel.Filter.Types, CreationDate = pageModel.Filter.CreationDate, SearchString = pageModel.Filter.SearchString }, Page = pageModel.Page, PageSize = pageModel.PageSize, SortField = pageModel.SortField, SortOrder = pageModel.SortOrder }); List <PrintingEditionModel> printingEditionModels = _printingEditionMapper.Map(printingEditions); PriceRange priceRange = await _printingEditionRepository.GetPriceRangeAsync(pageModel.Filter.Currency); return(new PrintingEditionPageDataModel { Data = printingEditionModels, Length = printingEditions.TotalItemCount, MinPrice = priceRange.MinPrice, MaxPrice = priceRange.MaxPrice }); }