Ejemplo n.º 1
0
        public async Task <Response <CreateAnswerCommandResponse> > Handle(CreateAnswerCommand request,
                                                                           CancellationToken cancellationToken)
        {
            var response = new Response <CreateAnswerCommandResponse>();

            if (!await _questionRepository.DoesExistAsync(request.QuestionId))
            {
                response.ErrorReason = ErrorReason.NotFound;
                response.Errors.Add(CreateAnswerKey,
                                    new List <string> {
                    ErrorMessages.Entity <Question> .GetNotFoundMessage(request.QuestionId)
                });
                return(response);
            }

            var answer = _mapper.Map <Answer>(request);
            await _answerRepository.CreateAsync(answer);

            var data = new CreateAnswerCommandResponse
            {
                QuestionId = answer.QuestionId
            };

            response.SetData(data);
            return(response);
        }
Ejemplo n.º 2
0
        public async Task <long> CreateAsync(AnswerDto comment, CancellationToken cancellation = default)
        {
            var entity = Mapper.Map <AnswerDto, Answer>(comment);
            var result = await _answerRepository.CreateAsync(entity, cancellation);

            return(result.Id);
        }
Ejemplo n.º 3
0
        public async Task <Answer> CreateAsync(Answer answer)
        {
            var entity = await _answerRepository.CreateAsync(answer);

            if (entity == null)
            {
                throw new AnswerNotCreatedException();
            }

            return(entity);
        }
Ejemplo n.º 4
0
 public async Task <bool> Submit(Answer answer)
 {
     return(await answerRepository.CreateAsync(answer));
 }