Esempio n. 1
0
        public ActionResult DisplayQUestionsOfQuiz(int quizId)
        {
            List <Quiz>     G                = db.Quizs.ToList();
            List <Question> qstion           = db.Questions.ToList();
            List <Option>   options          = db.Options.ToList();
            List <InstructorQuizViewModel> j = new List <InstructorQuizViewModel>();
            var quixx = new QuizWithQuestionsViewModel();
            // List<QuizWithQuestionsViewModel> qz = new List<QuizWithQuestionsViewModel>();
            InstructorQuizViewModel m = new InstructorQuizViewModel();


            List <OptionViewModel>        optionlist   = new List <OptionViewModel>();
            List <QuizQuestionsViewModel> questionlist = new List <QuizQuestionsViewModel>();

            foreach (Quiz q in G)
            {
                if (q.Id == quizId)
                {
                    foreach (Question qst in qstion)
                    {
                        QuizQuestionsViewModel qobj = new QuizQuestionsViewModel();
                        if (qst.QuizId == q.Id)
                        {
                            qobj.Name         = qst.Name;
                            qobj.Q_TotalMarks = qst.TotalMarks;
                            qobj.QuizId       = qst.QuizId;
                            qobj.Id           = qst.Id;

                            foreach (Option opt in options)
                            {
                                OptionViewModel optobj = new OptionViewModel();
                                if (opt.QuestionsId == qst.Id)
                                {
                                    optobj.OptionValue = opt.OptionValue;
                                    optobj.IsAnswer    = Convert.ToBoolean(opt.IsAnswer);
                                    optobj.QuestionsId = qst.Id;
                                    optobj.Id          = opt.Id;
                                }
                                optionlist.Add(optobj);
                            }

                            questionlist.Add(qobj);
                        }
                    }
                }
                quixx.questions = questionlist;
                quixx.options   = optionlist;
            }
            return(View(quixx));
        }
Esempio n. 2
0
        public IActionResult Get(int classSubjectid, int accountId)
        {
            try
            {
                QuizQuestionsViewModel qvm = GetQuizQuestionMasterOutput(classSubjectid, accountId);

                if (qvm == null)
                {
                    return(BadRequest(string.Format(@"[No Questions for classSubjectid={0} and quizId={1} ]", classSubjectid, accountId)));
                }
                else
                {
                    return(Ok(qvm));
                }
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message.ToString()));
            }
        }
Esempio n. 3
0
        public ActionResult Q_Index(int id)
        {
            List <Question> n = db.Questions.ToList();
            List <QuizQuestionsViewModel> l = new List <QuizQuestionsViewModel>();
            QuizQuestionsViewModel        s = new QuizQuestionsViewModel();

            foreach (Question q in n)
            {
                if (q.QuizId == id)
                {
                    l.Add(new QuizQuestionsViewModel
                    {
                        Id           = q.Id,
                        Name         = q.Name,
                        Q_TotalMarks = q.TotalMarks,
                        QuizId       = q.QuizId
                    });
                }
            }
            return(View(l));
        }
Esempio n. 4
0
        public ActionResult Add_Question(int id, QuizQuestionsViewModel model)
        {
            List <Question> m = db.Questions.ToList();
            List <Question> s = new List <Question>();

            foreach (Question v in m)
            {
                if (v.QuizId == id)
                {
                    sum = v.TotalMarks;
                    s.Add(v);
                }
            }
            var quz = db.Quizs.Find(id);

            if (sum < quz.TotalMarks)
            {
                try
                {
                    Question o = new Question();
                    //o.Id = model.Id;
                    o.Name       = model.Name;
                    o.TotalMarks = model.Q_TotalMarks;
                    o.QuizId     = id;
                    db.Questions.Add(o);
                    db.SaveChanges();
                    return(RedirectToAction("Q_Index", new { id = id }));
                }
                catch (Exception ex)
                {
                }
            }
            else
            {
                return(View("LimitExceed"));
            }
            return(View());
        }
Esempio n. 5
0
        private QuizQuestionsViewModel GetQuizQuestionMasterOutput(int classSubjectId, int accountId)
        {
            var QuizClassSubject = _context
                                   .ClassSubject
                                   .FromSql($"GetQuizClassSubjectByID {classSubjectId}")
                                   .ToList();

            if (QuizClassSubject.Count.Equals(0))
            {
                return(null);
            }

            QuizQuestionsViewModel qvm = new QuizQuestionsViewModel
            {
                id          = QuizClassSubject[0].ClassSubjectID,
                name        = QuizClassSubject[0].SubjectName,
                description = QuizClassSubject[0].SubjectDesc,
                classname   = QuizClassSubject[0].ClassDesc,
                questions   = GetAllQuestions(classSubjectId, accountId)
            };

            return(qvm);
        }
Esempio n. 6
0
        /// <summary>
        /// This function will return all the questions will be rendered in the front end
        /// </summary>
        /// <param name="classSubjectId">class & subject id</param>
        /// <param name="accountId">account owner for whom the questions will be return</param>
        /// <returns></returns>
        public QuizQuestionsViewModel GetQuizQuestionsByClassSubjctAndAccountId(int classSubjectId, int accountId, int totalQuestionToFetch = 20)
        {
            var QuizClassSubject = _context
                                   .ClassSubject
                                   .FromSql($"GetQuizClassSubjectByID {classSubjectId}")
                                   .ToList();

            if (QuizClassSubject.Count.Equals(0))
            {
                return(null);
            }

            QuizQuestionsViewModel qvm = new QuizQuestionsViewModel
            {
                id          = QuizClassSubject[0].ClassSubjectID,
                name        = QuizClassSubject[0].SubjectName,
                description = QuizClassSubject[0].SubjectDesc,
                classname   = QuizClassSubject[0].ClassDesc,
                questions   = GetAllQuestions(classSubjectId, accountId, totalQuestionToFetch)
            };

            qvm.totalQuestions = qvm.questions.Count;
            return(qvm);
        }