private IQueryable <ActivityInfo> GetFilteredQuery(GetActivityInfoInput input) { var query = QueryableExtensions.WhereIf(_activityInfoRepository.GetAll(), !input.Filter.IsNullOrWhiteSpace(), u => u.Name.Contains(input.Filter) || u.Code.Contains(input.Filter)); return(query); }
public async Task <PagedResultDto <ActivityInfoListDto> > GetActivityInfo(GetActivityInfoInput input) { var query = GetFilteredQuery(input); var userCount = await query.CountAsync(); var activityInfos = await query .OrderBy(input.Sorting) .PageBy(input) .ToListAsync(); var activityInfosListDto = ObjectMapper.Map <List <ActivityInfoListDto> >(activityInfos); return(new PagedResultDto <ActivityInfoListDto>( userCount, activityInfosListDto )); }