public async Task <List <StudyingEntityWord> > GetAllAsync(QueryParamiters queryParamiters)
        {
            IQueryable <StudyingEntityWord> result = ctx.StudyingEntityWords;

            if (!string.IsNullOrEmpty(queryParamiters.Value))
            {
                result = result.Where(x => x.Word.Value.ToLower().Contains(queryParamiters.Value.ToLower()));
            }
            if (!string.IsNullOrEmpty(queryParamiters.SortBy))
            {
                if (typeof(StudyingEntityWord).GetProperty(queryParamiters.SortBy) != null)
                {
                    result = result.OrderByCustom(queryParamiters.SortBy, queryParamiters.SortOrder);
                }
            }

            return(await result.Skip(queryParamiters.Size *(queryParamiters.Page - 1))
                   .Include(s => s.StudyingProcesInfo)
                   .Include(w => w.Word)
                   .Take(queryParamiters.Size).ToListAsync());
        }
示例#2
0
 public async Task <IActionResult> Get([FromQuery] QueryParamiters queryParamiters)
 {
     _logger.LogInformation("{Time}: Get all words.", DateTime.UtcNow);
     return(Ok(await _repository.GetAllAsync(queryParamiters)));
 }