public async Task <ServiceResponse <GetPokemonDto> > Handle(PokemonGetByNumberCommand request, CancellationToken cancellationToken) { ServiceResponse <GetPokemonDto> serviceResponse = new ServiceResponse <GetPokemonDto>(); var pokemonDto = await _pokemonRepository.GetPokemon(EnumPokemonSelectOptions.Number, request.Number.ToString()); if (String.IsNullOrEmpty(pokemonDto.Name)) { pokemonDto = await GetPokemonInfoApi(request.Number); } serviceResponse.Data = pokemonDto; if (pokemonDto == null) { serviceResponse.Success = false; serviceResponse.Message = "Sorry, we can't find any info about that pokemon."; } return(serviceResponse); }
public async Task <IActionResult> GetPokemonByNumber([FromRoute] PokemonGetByNumberCommand command) { var serviceResponse = await _mediator.Send(command); return(Ok(serviceResponse)); }