예제 #1
0
        public async Task <IActionResult> AddAnswerForQuestion(int questionId,
                                                               [FromBody] AnswerResource answerResource)
        {
            var answer = _mapper.Map <AnswerResource, Answer>(answerResource);
            var userId = _userManager.GetUserId(User);

            if (ModelState.IsValid)
            {
                if (await _quizService.UserCanAddQuestionToQuizAsync(questionId, userId))
                {
                    answer.QuestionId = questionId;
                    await _answerService.AddAnswerAsync(answer);

                    return(Ok(new ApiResponse("You successfully added a new answer.")));
                }
                else
                {
                    return(BadRequest(new ApiResponse(
                                          "You can't add answer to the specified question.", false)));
                }
            }
            else
            {
                return(BadRequest(new ApiResponse(ModelState)));
            }
        }