示例#1
0
        public ActionResult AddQuestion()
        {
            var model = new AddQuestionViewModels();

            model.ListControl = new SelectList(db.questionControls.ToList(), "Id", "Name");
            return(View(model));
        }
示例#2
0
        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);
        }
示例#3
0
        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));
        }
示例#4
0
        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"));
        }