public virtual async Task <PagedResult <TList> > GetActives(PageRequest request) { try { var pagedData = await repository.AllActives() .ProjectTo <TList>(mapper.ConfigurationProvider) .Skip((request.PageNumber - 1) * request.PageSize) .Take(request.PageSize) .ToListAsync(); var count = await repository.AllActives().CountAsync(); return(new PagedResult <TList>(pagedData, request.PageNumber, request.PageSize, count)); } catch (Exception ex) { Logger.LogError(ex, ex.Message); throw new ServiceException(); } }
public async Task <PagedResult <TalentDetailDto> > GetTalentsInPool(PageRequest request) { try { var filteredData = talentRepository.AllActives().Where(x => x.IsInPool) .ProjectTo <TalentDetailDto>(mapper.ConfigurationProvider); var pagedData = await filteredData .Skip((request.PageNumber - 1) *request.PageSize) .Take(request.PageSize) .ToListAsync(); var count = await filteredData.CountAsync(); return(new PagedResult <TalentDetailDto>(pagedData, request.PageNumber, request.PageSize, count)); } catch (Exception ex) { Logger.LogError(ex, ex.Message); throw new ServiceException(); } }