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