Ejemplo n.º 1
0
        public IActionResult PostAnswer(int id, int qid, [FromBody] AnswerCreateModel value)
        {
            const string sql      = "INSERT INTO Answer (Text, QuestionId) VALUES(@Text, @QuestionId); SELECT LAST_INSERT_ROWID();";
            var          answerId = _connection.ExecuteScalar(sql, new { Text = value.Text, QuestionId = qid });

            return(Created($"/api/quizzes/{id}/questions/{qid}/answers/{answerId}", null));
        }
Ejemplo n.º 2
0
 private Answer MapAnswerCreateModelToPersistence(AnswerCreateModel answer)
 {
     return(new Answer()
     {
         Id = Guid.NewGuid(),
         Body = answer.Body
     });
 }
        public async Task <AnswersBaseModel> Insert(AnswerCreateModel model)
        {
            var entity = _mapper.Map <Answers>(model);

            await _context.Answers.AddAsync(entity);

            await SaveAsync();

            return(_mapper.Map <AnswersBaseModel>(entity));
        }
 public void CreateAnswer(Guid?id, AnswerCreateModel answerCreateModel)
 {
     _repository.CreateAnswer(
         Answer.CreateAnswer(
             answerCreateModel.UserId,
             id.Value,
             answerCreateModel.Text
             )
         );
 }
Ejemplo n.º 5
0
        public IActionResult Create(Guid?id, [Bind("UserId,QuestionId,Text")] AnswerCreateModel answerCreateModel)
        {
            if (!ModelState.IsValid)
            {
                return(View(answerCreateModel));
            }

            _service.CreateAnswer(id, answerCreateModel);

            return(RedirectToAction("Index", "Questions"));
        }
Ejemplo n.º 6
0
        public IActionResult CreateNew(Guid?qid, Guid?uid, String text, [Bind("UserId,QuestionId,Text")] AnswerCreateModel answerCreateModel)
        {
            if (!ModelState.IsValid)
            {
                return(View(answerCreateModel));
            }

            _service.CreateNew(qid, uid, text);

            return(RedirectToAction("Index", "Questions"));
        }
        public async Task <IActionResult> Post([FromBody] AnswerCreateModel model)
        {
            if (ModelState.IsValid)
            {
                var answer = await _service.Insert(model);

                return(answer != null
                    ? (IActionResult)CreatedAtRoute(nameof(GetById), answer, answer.Id)
                    : Conflict());
            }
            return(BadRequest());
        }
Ejemplo n.º 8
0
        public async Task <IActionResult> PostAnswer([FromBody] AnswerCreateModel model)
        {
            if (ModelState.IsValid)
            {
                var item = await _service.Insert(model);

                if (item != null)
                {
                    return(CreatedAtRoute(nameof(Get), item, item.Id));
                }
                return(Conflict());
            }
            return(BadRequest());
        }
Ejemplo n.º 9
0
        public void CreateAnswer_WhenCalled_ExpectToCreateAnswer()
        {
            // Arrange
            var sut = CreateSut();
            var id  = new Guid();
            var answerCreateModel = new AnswerCreateModel
            {
                UserId     = new Guid(),
                QuestionId = id,
                Text       = "New text"
            };

            // Act
            sut.CreateAnswer(id, answerCreateModel);

            // Assert
            Assert.AreEqual(Mock.Answers.Count, 6);
        }
Ejemplo n.º 10
0
        public ActionResult Create(AnswerCreateModel model)
        {
            if (ModelState.IsValid)
            {
                Poll poll = GetPollForCurrentUserById(model.PollId);
                if (poll == null || poll.WasSent)               // If poll does not belong to current user or was sent,
                {
                    return(RedirectToAction("Index", "Polls")); // Do not allow modification after poll submission.
                }
                Db.Answers.Add(new Answer
                {
                    PollId     = model.PollId,
                    PollAnswer = model.Answer
                });
                Db.SaveChanges();
                return(RedirectToAction("Edit", "Polls", new { id = poll.PollId }));
            }

            return(View(model));
        }