public ActionResult AddQuestion() { var model = new AddQuestionViewModels(); model.ListControl = new SelectList(db.questionControls.ToList(), "Id", "Name"); return(View(model)); }
public ActionResult AddQuestion(AddQuestionViewModels questionModel) { var question = new Question(); var questionAttr = new QuestionAttribute(); var QuestionId = 0; question.Label = questionModel.Label; question.Description = questionModel.Description; question.ControlId = questionModel.ControlId; if (ModelState.IsValid) { question.UpdatedDate = DateTime.Now; db.questions.Add(question); db.SaveChanges(); QuestionId = question.Id; } foreach (var item in questionModel.QuestionAttributes) { questionAttr.Name = item.Name; questionAttr.Value = item.Value; questionAttr.QuestionId = QuestionId; if (ModelState.IsValid) { questionAttr.UpdatedDate = DateTime.Now; db.questionAttributes.Add(questionAttr); db.SaveChanges(); } } return(RedirectToAction("Index")); //return View(questionModel); }
public ActionResult EditQuestion(int id) { var question = db.questions.Find(id); var model = new AddQuestionViewModels(); model.Id = question.Id; model.Label = question.Label; model.Description = question.Description; model.ControlId = question.ControlId; model.ListControl = new SelectList(db.questionControls.ToList(), "Id", "Name"); model.QuestionAttributes = new List <QuestionAttribute>(db.questionAttributes.Where(x => x.QuestionId == model.Id).ToList()); return(View(model)); }
public ActionResult EditQuestion(AddQuestionViewModels questionModel) { if (!ModelState.IsValid) { return(RedirectToAction("Index")); } var question = new Question(); var questionAttr = new QuestionAttribute(); question.Id = questionModel.Id; question.Label = questionModel.Label; question.Description = questionModel.Description; question.ControlId = questionModel.ControlId; question.UpdatedDate = DateTime.Now; db.Entry(question).State = EntityState.Modified; db.SaveChanges(); foreach (var item in questionModel.QuestionAttributes) { questionAttr.Name = item.Name; questionAttr.Value = item.Value; questionAttr.QuestionId = questionModel.Id; questionAttr.UpdatedDate = DateTime.Now; db.questionAttributes.Add(questionAttr); } foreach (var id in questionModel.DeletedQuestionAttributes) { var DeleteItem = db.questionAttributes.Find(id); db.questionAttributes.Remove(DeleteItem); } db.SaveChanges(); return(RedirectToAction("Index")); }