Exemplo n.º 1
0
        public async Task <ActionResult <IEnumerable <GameIndexResponseModel> > > GetBySearchQuery(string searchQuery)
        {
            if (searchQuery == string.Empty)
            {
                return(BadRequest("Search query is empty"));
            }

            var query    = new GetGamesBySearchQueryQuery(searchQuery);
            var response = await _mediator.Send(query);

            if (response == null)
            {
                return(NotFound($"Cannot find game with {searchQuery} query"));
            }

            return(Ok(response));
        }
Exemplo n.º 2
0
        public async Task <List <GameIndexResponseModel> > Handle(GetGamesBySearchQueryQuery request, CancellationToken cancellationToken)
        {
            IList <Game> games = new List <Game>();

            await Task.Run(() =>
            {
                games = _gamesService.GetAllBySearchQuery(request.SearchQuery).ToList();
            });

            List <GameIndexResponseModel> response = new List <GameIndexResponseModel>();

            foreach (var game in games)
            {
                response.Add(_mapper.Map <GameIndexResponseModel>(game));
            }

            return(response);
        }