Пример #1
0
        public ActionResult DeleteQues(Question mod)
        {
            Question quesdelete = db.Questions.Where(val => val.Id == mod.Id).Single <Question>();
            var      testid     = quesdelete.TestXQuestions.Where(x => x.QuestionId == quesdelete.Id).Select(y => y.TestId).Single();
            var      choice     = db.Choices.Where(x => x.QuestionId == quesdelete.Id).ToList();

            foreach (var c in choice)
            {
                db.Choices.Remove(c);
            }
            TestXQuestion txq = db.TestXQuestions.Where(x => x.QuestionId == quesdelete.Id).Single <TestXQuestion>();

            db.TestXQuestions.Remove(txq);
            db.Questions.Remove(quesdelete);
            db.SaveChanges();


            // to reset the sequence of the question number in database
            var queslist = db.TestXQuestions.Where(x => x.TestId == testid).ToList();

            for (int t = 0; t < queslist.Count(); t++)
            {
                queslist[t].QuestionNumber = t + 1;
                db.SaveChanges();
            }


            SessionModel model = new SessionModel();

            model.TestId = testid;
            return(RedirectToAction("EditTest", model));
        }
Пример #2
0
        public ActionResult DeleteConfirmed(int id)
        {
            TestXQuestion testXQuestion = db.TestXQuestions.Find(id);

            db.TestXQuestions.Remove(testXQuestion);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #3
0
 public IActionResult PostTestXQuestion([FromBody] TestXQuestion testXQuestion)
 {
     if (testXQuestion == null)
     {
         return(BadRequest("TestXQuestion is null !!!"));
     }
     _dataRepository.Add(testXQuestion);
     return(CreatedAtRoute("GetTxQ", new { Id = testXQuestion.TestXQuestionId }, testXQuestion));
 }
Пример #4
0
        public IActionResult GetTestXQuestionById(long testXQuestionId)
        {
            TestXQuestion testXQuestion = _dataRepository.Get(testXQuestionId);

            if (testXQuestion == null)
            {
                return(NotFound("TestXQuestion record not found !!!"));
            }
            return(Ok(testXQuestion));
        }
        public void Add(Test entity)
        {
            TestXQuestion testXQuestion = new TestXQuestion();

            testXQuestion.UniqueTestID = entity.UniqueID;
            _testContext.TestXQuestions.Add(testXQuestion);


            _testContext.Tests.Add(entity);
            _testContext.SaveChanges();
        }
Пример #6
0
        public IActionResult DeleteQuestionXDuration(long testXQuestionId)
        {
            TestXQuestion testXQuestion = _dataRepository.Get(testXQuestionId);

            if (testXQuestion == null)
            {
                return(NotFound("TestXQuestion record not found !!!"));
            }
            _dataRepository.Delete(testXQuestion);
            return(GetTestXQuestion());
        }
Пример #7
0
 public ActionResult Edit([Bind(Include = "Id,TestId,QuestionId,QuestionNumber,IsActive")] TestXQuestion testXQuestion)
 {
     if (ModelState.IsValid)
     {
         db.Entry(testXQuestion).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.QuestionId = new SelectList(db.Questions, "Id", "QuestionType", testXQuestion.QuestionId);
     ViewBag.TestId     = new SelectList(db.Tests, "Id", "Name", testXQuestion.TestId);
     return(View(testXQuestion));
 }
        public ActionResult AddNewQuestion(Question question, int TestId)
        {
            fillUserData();
            if (ModelState.IsValid)
            {
                string category = db
                                  .QuestionCategories
                                  .Where(cat => cat.Id == question.CategoryId)
                                  .Select(cat => cat.Category)
                                  .FirstOrDefault();

                question.QuestionType = category;

                int nextQuestionNumber = db
                                         .TestXQuestions
                                         .Where(txq => txq.TestId == TestId)
                                         .Count() + 1;

                db.Questions.Add(question);
                db.SaveChanges();

                Question lastInsertedQuestion = db
                                                .Questions
                                                .OrderByDescending(q => q.Id)
                                                .FirstOrDefault();

                TestXQuestion testXQuestion = new TestXQuestion()
                {
                    TestId         = TestId,
                    QuestionId     = lastInsertedQuestion.Id,
                    QuestionNumber = nextQuestionNumber,
                    IsActive       = question.IsActive
                };

                db.TestXQuestions.Add(testXQuestion);

                db.SaveChanges();

                return(RedirectToAction("QuestionPage", new { TestId }));
            }

            // if an Error Occurred!

            Test test = db.Tests.FirstOrDefault(t => t.Id == TestId);

            if (test != null)
            {
                ViewBag.Categories = new SelectList(db.QuestionCategories.ToList(), "Id", "Category");
                ViewBag.Test       = test;
            }

            return(View(question));
        }
Пример #9
0
        // GET: TestXQuestion/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            TestXQuestion testXQuestion = db.TestXQuestions.Find(id);

            if (testXQuestion == null)
            {
                return(HttpNotFound());
            }
            return(View(testXQuestion));
        }
Пример #10
0
        public IActionResult PutTestXQuestion(long testXQuestionId, [FromBody] TestXQuestion testXQuestion)
        {
            if (testXQuestion == null)
            {
                return(BadRequest("TestXQuestion is null !!!"));
            }
            TestXQuestion testXQuestionToUpdate = _dataRepository.Get(testXQuestionId);

            if (testXQuestionToUpdate == null)
            {
                return(NotFound("TestXQuestion record not found !!!"));
            }
            _dataRepository.Update(testXQuestionToUpdate, testXQuestion);
            return(CreatedAtRoute("GetTxQ", new { Id = testXQuestion.TestXQuestionId }, testXQuestion));
        }
Пример #11
0
        // GET: TestXQuestion/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            TestXQuestion testXQuestion = db.TestXQuestions.Find(id);

            if (testXQuestion == null)
            {
                return(HttpNotFound());
            }
            ViewBag.QuestionId = new SelectList(db.Questions, "Id", "QuestionType", testXQuestion.QuestionId);
            ViewBag.TestId     = new SelectList(db.Tests, "Id", "Name", testXQuestion.TestId);
            return(View(testXQuestion));
        }
Пример #12
0
        public void Post(Test entity)
        {
            Random unique   = new Random();
            int    uniqueID = unique.Next();

            int id = db.Tests.Max(t => t.TestId);

            //var txtid = db.Tests.Where(x => x.TestId == entity.TestId);
            entity.UniqueID = uniqueID;
            db.Tests.Add(entity);
            db.SaveChanges();

            TestXQuestion testX = db.TestXQuestions.Where(s => s.Label == "UniqueTestID").FirstOrDefault();

            testX.UniqueTestID = uniqueID;
            db.SaveChanges();
        }
Пример #13
0
        public ActionResult AddQues(AddQues m)
        {
            if (ModelState.IsValid)
            {
                if (m != null)
                {
                    Question nq = new Question();
                    nq.QuestionCategoryId = 2;  // hard coded to remove multiple option select
                    nq.QuestionType       = "radio";
                    //nq.QuestionCategoryId = m.QuestionCategoryId;
                    //if (nq.QuestionCategoryId == 1)
                    //    nq.QuestionType = "mcq";
                    //else
                    //    nq.QuestionType = "radio";
                    nq.Question1 = m.Question;
                    nq.Points    = Convert.ToInt32(m.Points);
                    nq.IsActive  = m.IsActive;

                    db.Questions.Add(nq);

                    db.SaveChanges();


                    var           testid = m.TestId;
                    TestXQuestion newTXQ = new TestXQuestion();
                    newTXQ.TestId     = testid;
                    newTXQ.QuestionId = nq.Id;
                    var z = db.TestXQuestions.Where(p => p.TestId == testid).Select(p => p.QuestionNumber).FirstOrDefault();
                    if (z != 0)
                    {
                        newTXQ.QuestionNumber = db.TestXQuestions.Where(x => x.TestId == testid).Select(x => x.QuestionNumber).Max() + 1;
                    }
                    else
                    {
                        newTXQ.QuestionNumber = 1;
                    }
                    newTXQ.IsActive = nq.IsActive;
                    db.TestXQuestions.Add(newTXQ);
                    db.SaveChanges();

                    return(RedirectToAction("AddChoice", "Admin", new { @id = nq.Id }));
                }
            }
            return(View());
        }
Пример #14
0
        public void Post(Question entity)
        {
            Random unique         = new Random();
            int    uniqueQuestion = unique.Next();

            Choice choice = db.Choices.Where(s => s.Label == "UniqueQuestionID").FirstOrDefault();

            //choice.QuestionId = entity.QuestionId;
            choice.UniqueQuestionID = uniqueQuestion;
            //choice.Points = entity.Points;
            //choice.Label = "a";
            //db.Choices.Add(choice);
            db.SaveChanges();

            TestXQuestion testX = db.TestXQuestions.Where(s => s.Label == "UniqueTestID").FirstOrDefault();  //=========================== We have to delete it and have to take value form cache when implement.

            //TestXQuestion testXQuestion = db.TestXQuestions.Where(t => t.UniqueID == entity.TestUniqueID).FirstOrDefault();
            //testXQuestion.QuestionId = entity.QuestionId;
            //db.TestXQuestions.Add(testXQuestion);
            testX.UniqueTestID = entity.TestUniqueID;
            db.SaveChanges();

            TestXQuestion testXQuestion = new TestXQuestion();

            testXQuestion.UniqueQuestionID = uniqueQuestion;
            testXQuestion.IsActive         = entity.IsActive;
            testXQuestion.UniqueTestID     = testX.UniqueTestID;
            testXQuestion.Label            = "Question";
            db.TestXQuestions.Add(testXQuestion);
            db.SaveChanges();



            //entity.SubjectID = subjectVM.SubjectID;
            //entity.QuestionCategoryId = questionCategoryVM.QuestionCategoryId;
            //entity.ExhibitId = exhibitVM.ExhibitId;
            entity.QuestionUniqueID = uniqueQuestion;
            db.Questions.Add(entity);
            db.SaveChanges();
        }
Пример #15
0
 public IHttpActionResult DeleteTestXQuestion(int testXQuestionId, TestXQuestion testXQuestion)
 {
     _repo.Delete(testXQuestionId);
     return(CreatedAtRoute("GetTQ", new { id = testXQuestion.TestXQuestionId }, testXQuestion));
 }
Пример #16
0
 public IHttpActionResult PostTestXQuestion(TestXQuestion testXQuestion)
 {
     _repo.Post(testXQuestion);
     return(Ok(testXQuestion));
 }