public async Task <PageResultDto <Client> > SearchAsync(QuerySearchDefault @param) { var query = Context.Clients.AsQueryable(); if (!string.IsNullOrEmpty(@param.SearchKey)) { query = query.Where(x => EF.Functions.Like(x.ClientName, $"%{@param.SearchKey}%")); } int totalRecord = await query.CountAsync(); var result = await query .OrderByDescending(x => x.Created) .Skip(@param.GetSkip()) .Take(@param.GetTake()) .ToListAsync(); return(new PageResultDto <Client>(totalRecord, @param.GetTake(), result.Select(x => x.ToModel()))); }
public async Task <IActionResult> SearchAsync([FromQuery] QuerySearchDefault @param) => Ok(await _clientService.SearchAsync(@param));