public async Task <UserAnswer> UserAnswer(InUserAnswer inUserAnswer, int userId) { var gameQuestion = await context.GameQuestions .FirstOrDefaultAsync(x => x.QuestionId == inUserAnswer.QuestionId && x.GameId == inUserAnswer.GameId); if (gameQuestion.IsCurrent == true) { var newUa = new UserAnswer { AnswerId = inUserAnswer.AnswerId, GameId = inUserAnswer.GameId, QuestionId = inUserAnswer.QuestionId, UserId = userId, }; await context.UserAnswers.AddAsync(newUa); await context.SaveChangesAsync(); return(await context.UserAnswers.Include(x => x.Answer).Include(x => x.User).FirstOrDefaultAsync(x => x.Id == newUa.Id)); } throw ExceptionFactory.SoftException(ExceptionEnum.QuestionNotCurrent, "QuestionNotCurrent"); }
public async Task <OutUserAnswer> UserAnswer([FromBody] InUserAnswer inUserAnswer) { var answer = await gameService.UserAnswer(inUserAnswer, UserId); return(mapperProfile.Map <OutUserAnswer>(answer)); }