public async Task <IActionResult> SearchTasksInProject([FromQuery] SearchTasksInProject query) { var result = await _mediator.Send(query); return(Ok(result)); }
public async Task <PaginatedItemsResult <SearchTasksInProjectItemResult> > Handle(SearchTasksInProject request, CancellationToken cancellationToken) { var projectTasks = _dbContext.Tasks .AsNoTracking() .Where(x => x.ProjectId == request.ProjectId && (x.Title.ToLower().Contains(request.Value.ToLower()) || x.Description.ToLower().Contains(request.Value.ToLower()))) .OrderBy(x => x.Title.Length) .ThenByDescending(x => x.CreatedDate); var result = await _paginationService.PaginateAsync <SearchTasksInProjectItemResult>(projectTasks, request.PageIndex, request.PageSize, cancellationToken); return(result); }