示例#1
0
        public async Task <IList <ApartmentDTO> > GetApartmentByParamsAsync(ApartmentSearchParamsDTO searchParams)
        {
            var apartmentCollection =
                await(searchParams.Sort.Type == null
                        ? await _apartmentRepository.GetAllAsync(searchParams.GetExpression(), x => x.ApartmentImages, x => x.ApartmentLocation, x => x.ApartmentType)
                        : searchParams.Sort.Direction
                        ? (await _apartmentRepository.GetAllAsync(searchParams.GetExpression(), x => x.ApartmentImages, x => x.ApartmentLocation, x => x.ApartmentType))
                      .OrderBy(searchParams.Sort.GetSortExpression())
                        : (await _apartmentRepository.GetAllAsync(searchParams.GetExpression(), x => x.ApartmentImages, x => x.ApartmentLocation, x => x.ApartmentType))
                      .OrderByDescending(searchParams.Sort.GetSortExpression())
                      )
                .Skip(searchParams.Skip).Take(searchParams.Take).ToListAsync();
            var apartmentCollectionDTO = _mapper.Map <IList <ApartmentDTO> >(apartmentCollection);

            return(apartmentCollectionDTO);
        }
示例#2
0
        public async Task <int> GetAmountApartmentByParamsAsync(ApartmentSearchParamsDTO searchParams)
        {
            var apartmentCollectionAmount =
                (await _apartmentRepository.GetAllAsync(searchParams.GetExpression())).Count();

            return(apartmentCollectionAmount);
        }