コード例 #1
0
        public async Task <List <Answer> > GetAnswersForQuestionAsync(int questionId)
        {
            var answerSpec = new AnswerSpecification(questionId);
            var entities   = (await _answerRepository.ListAsync(answerSpec))?.ToList();

            if (entities == null)
            {
                _logger.LogInformation($"Answers for question {questionId} were not found.");
            }

            return(entities);
        }
コード例 #2
0
        public IActionResult AnswerQuestion([FromBody] AnswerSpecification specification)
        {
            var username = _httpContextAccessor.HttpContext.User.FindFirst(ClaimTypes.NameIdentifier).Value;
            var user     = _userManager.GetUser(username);

            try
            {
                var result = _gameManager.AnswerQuestion(user, specification.QuestionId, specification.AnswerId);
                return(Ok(result));
            }
            catch (NoQuestionsAnsweredException e)
            {
                return(BadRequest(new NoQuestionsAnsweredError(e.Message)));
            }
        }