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)); }
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 ) ); }
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")); }
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()); }
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()); }
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); }
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)); }