Пример #1
0
        public async Task <UpdateJokeResponse> Handle(UpdateJokeRequest request, CancellationToken cancellationToken)
        {
            var joke = _mapper.Map <Joke>(request);

            var validator = new JokeValidator();

            validator.Validate(joke);

            if (validator.Errors.Count > 0)
            {
                throw new Exception(validator.Errors.FirstOrDefault());
            }

            var jokeExists = await _jokeRepository.Get(joke.Id);

            if (jokeExists == null)
            {
                throw new Exception("A piada informada não existe.");
            }

            var jokeCreated = await _jokeRepository.Update(joke);

            return(new UpdateJokeResponse
            {
                Id = jokeCreated.Id,
                Text = jokeCreated.Text,
                Response = jokeCreated.Response
            });
        }
Пример #2
0
        public async Task <JokeDTO> Get(string id)
        {
            var joke = await _jokesRepository.Get(id);

            return(_mapper.Map <JokeDTO>(joke));
        }