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); }
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); }
public async Task <Answer> CreateAsync(Answer answer) { var entity = await _answerRepository.CreateAsync(answer); if (entity == null) { throw new AnswerNotCreatedException(); } return(entity); }
public async Task <bool> Submit(Answer answer) { return(await answerRepository.CreateAsync(answer)); }