示例#1
0
        public async Task <ActionResult <PagedList <ClubDto> > > GetClubs([FromQuery] ClubParams clubParams)
        {
            var clubs = await _unitOfWork.ClubRepository.GetClubsAsync(clubParams);

            var clubsToReturn = _mapper.Map <IEnumerable <ClubDto> >(clubs);

            Response.AddPaginationHeader(clubs.CurrentPage, clubs.PageSize, clubs.TotalCount, clubs.TotalPages);
            return(Ok(clubsToReturn));
        }
示例#2
0
        public async Task <PagedList <ClubDto> > GetClubsAsync(ClubParams clubParams)
        {
            var query = _context.Clubs.AsQueryable();

            query = query.Where(u => u.City == clubParams.City);
            query = query.Where(u => u.State == clubParams.State);

            return(await PagedList <ClubDto> .CreateAsync(query.ProjectTo <ClubDto>(_mapper.ConfigurationProvider)
                                                          .AsNoTracking(), clubParams.PageNumber, clubParams.PageSize));
        }
        public void GetReturnsClubs()
        {
            //Arrange
            var mockRepo   = new Mock <IUnitOfWork>();
            var mapper     = new Mock <IMapper>();
            var clubParams = new ClubParams();
            var controller = new ClubController(mapper.Object, mockRepo.Object);

            //Act
            var result = controller.GetClubs(clubParams);

            //Assert
            Assert.IsAssignableFrom <Task <ActionResult <PagedList <ClubDto> > > >(result);
        }