public ActionResult Index(int?id) { TestDTO testDTO = TestFormingService.GetTest(id); TestAnswerViewModel testView = new TestAnswerViewModel() { Test_ID = testDTO.Test_ID, Topic = testDTO.Topic, TimeForTest = testDTO.TimeForTest, }; testView.Questions = new List <QuestionAnswerViewModel>(); var mapper = new MapperConfiguration(cfg => cfg.CreateMap <AnswerDTO, AnswerViewModel>()).CreateMapper(); foreach (var quest in testDTO.Questions) { QuestionAnswerViewModel qvm = new QuestionAnswerViewModel { Question_ID = quest.Question_ID, Test_ID = quest.Test_ID, content = quest.content, ISFULL = quest.ISFULL }; testView.Questions.Add(qvm); qvm.Answers = mapper.Map <IEnumerable <AnswerDTO>, List <AnswerViewModel> >(quest.Answers); } return(View(testView)); }
public async Task <IViewComponentResult> InvokeAsync(string searchQuestionId, string searchAnswerContent) { IQueryable <int> questionQuery = from question in _questionContext.Question orderby question.QuestionId select question.QuestionId; var answers = from m in _answerContext.Answer select m; if (!string.IsNullOrEmpty(searchAnswerContent)) { answers = answers.Where(s => s.Content.Contains(searchAnswerContent)); } if (!string.IsNullOrEmpty(searchQuestionId)) { answers = answers.Where(x => x.QuestionId == int.Parse(searchQuestionId)); } var vm = new QuestionAnswerViewModel { SearchQuestionId = searchQuestionId, SearchAnswerContent = searchAnswerContent, Questions = new SelectList(await questionQuery.Distinct().ToListAsync()), Answers = await answers.ToListAsync() }; return(View(vm)); }
public ActionResult QuestAnsDetails(int?id) { //create object of ADO.Net Entity Data Model Code First //var db = new QuestionAnswer(); //Get Student detail as per student ID var quest = _context.Questions .Include(q => q.Topic) .Include(q => q.UserAccount) .Where(m => m.QuestionId == id) .FirstOrDefault(); //.Select(m=> new QuestionAnswerViewModel { //Questions= new Question { }, //Questtopic=m.Topic //} ) //Get Result Exam marks detail as per student ID var ans = _context.Answers .Include(q => q.Question) .Include(q => q.UserAccount) .Where(m => m.QuestId == id).ToList(); //Output set to ViewModel var model = new QuestionAnswerViewModel { Questions = quest, Answers = ans }; //var model = new QuestionAnswerViewModel { Questions = quest, Questtopic=quest.Topic, Answers =ans }; return(View(model)); }
public JsonResult Add(QuestionAnswerViewModel questionInput) { if (ModelState.IsValid) { this.answersService.Add(questionInput.QuestionId, questionInput.Answer); return Json(new { isSuccessfullyAdded = true }); } return Json(new { isSuccessfullyAdded = false }); }
/// <summary> /// Check if the selected answers are giving the correct answer /// </summary> /// <param name="qvm"></param> /// <returns></returns> public bool QuestionsIsCorrect(QuestionAnswerViewModel qvm, List <string> answerList) { //SDI: In this version of the tool, there can only be one correct answer (To be changed in V1.1) bool res = false; if (answerList.Count() == 1 && qvm.CorrectAnswerText == answerList[0]) { res = true; } return(res); }
public void Create(QuestionAnswerViewModel vm) { try { _dataContext.Save(vm.Question); var id = _dataContext.GetAll().Last().ID; vm.AnswerList.ForEach(i => { i.QuestionID = id; }); aws.CreateList(vm.AnswerList); } catch (Exception ex) { } }
public List <QuestionAnswerViewModel> GetRandomQuestions(int _questNbr, ChapterViewModel _chapVM) { List <QuestionAnswerViewModel> TestQuestionVMList = new List <QuestionAnswerViewModel>(); List <Question> AllQuestions = Repository.GetQuestionsByChapterId(_chapVM.ChapterId).ToList(); Chapter selChapter = Repository.GetChapterByChapterId(_chapVM.ChapterId); if (AllQuestions != null && (AllQuestions.Count() >= _questNbr)) { //Generate a random list of questions List <Question> RandomQuestionList = Tools.PickRandom(AllQuestions.ToArray(), _questNbr); foreach (Question question in RandomQuestionList) { QuestionAnswerViewModel qvm = new QuestionAnswerViewModel(_chapVM); qvm.QuestionId = question.ID; qvm.QuestionChaperId = question.ChaperId; qvm.QuestionChapterName = selChapter.Name; qvm.QuestionText = question.Text; qvm.CorrectAnswerText = question.CorrectAnswer; qvm.FakeAnswerText1 = question.FakeAnswer1; qvm.FakeAnswerText2 = question.FakeAnswer2; qvm.FakeAnswerText3 = question.FakeAnswer3; qvm.CurrentChapter = selChapter; TestQuestionVMList.Add(qvm); } } else if (AllQuestions != null && (AllQuestions.Count() > 0)) { //Generate a random list of questions List <Question> RandomQuestionList = Tools.PickRandom(AllQuestions.ToArray(), AllQuestions.Count()); foreach (Question question in RandomQuestionList) { QuestionAnswerViewModel qvm = new QuestionAnswerViewModel(_chapVM); qvm.QuestionId = question.ID; qvm.QuestionChaperId = question.ChaperId; qvm.QuestionChapterName = selChapter.Name; qvm.QuestionText = question.Text; qvm.CorrectAnswerText = question.CorrectAnswer; qvm.FakeAnswerText1 = question.FakeAnswer1; qvm.FakeAnswerText2 = question.FakeAnswer2; qvm.FakeAnswerText3 = question.FakeAnswer3; qvm.CurrentChapter = selChapter; TestQuestionVMList.Add(qvm); } } return(TestQuestionVMList); }
public IActionResult Add([FromQuery] QuestionAnswerViewModel model) { var QuestionsOptionResponse = _questionAnswerService.Add(new QuestionsAnswer { Content = model.Content, QuestionsId = model.QuestionsId }); if (QuestionsOptionResponse.IsSucceeded && QuestionsOptionResponse.Result != null) { return(Ok(QuestionsOptionResponse.Result)); } return(QuestionsOptionResponse.HttpGetResponse()); }
public TestQuestionResult(TestQuestionManager tqMgr, QuestionAnswerViewModel qaVM) { this.BindingContext = tqMgr; Content = new StackLayout { Children = { new Label { Text = "Votre resultat au test de " + qaVM.CurrentChapter.Name + " est de:" + tqMgr.TotalCorrectAnswer.ToString() + " / " + tqMgr.TotalTestQuestion.ToString() } } }; }
public static QuestionAnswerEntity ToBllQuestionAnswer(this QuestionAnswerViewModel questionAnswer) { if (questionAnswer == null) { return(null); } return(new QuestionAnswerEntity() { Id = questionAnswer.Id, Content = questionAnswer.Content, Correct = questionAnswer.Correct, QuestionId = questionAnswer.QuestionId }); }
// GET: Questions public async Task <IActionResult> Index() { var Questions = await _context.Question.ToListAsync(); var Answers = await _context.Answer.ToListAsync(); var QAViewModel = new QuestionAnswerViewModel { Questions = Questions, Answers = Answers }; return(View(QAViewModel)); }
public ActionResult RemoveQuestionAnswer(QuestionCategoriesViewModelContainer model) { if (!String.IsNullOrEmpty(model.QuestionAnswerHelper.AnswerToRemove)) { QuestionAnswerViewModel existingAnswer = model.QuestionAnswerViewModel.Where(qa => qa.Value == model.QuestionAnswerHelper.AnswerToRemove.Trim()).FirstOrDefault(); if (existingAnswer != null) { model.QuestionAnswerViewModel.Remove(existingAnswer); } } model.QuestionAnswerHelper.AnswerToAdd = ""; model.QuestionAnswerHelper.AnswerToRemove = ""; ModelState.Clear(); return(View("Index", model)); }
public IActionResult AddQuestionAnswer(int questionId) { var question = _questionDao.GetAll().FirstOrDefault(q => q.Id == questionId); if (question != null) { var AnswerViewModel = new QuestionAnswerViewModel() { QuestionId = question.Id, QuestionContent = question.Content }; return(View("AddOrUpdateQuestionAnswer", AnswerViewModel)); } return(RedirectToAction("Details", new { questionId })); }
public IActionResult UserAnswer([FromBody] QuestionAnswerViewModel viewModel) { var question = _questionRepository.GetById(viewModel.QuestionId); if (question == null) { return(NotFound()); } if (viewModel.Answer.Trim() == question.RightAnswer.Trim()) { return(Ok(new { Message = "Answer is correct" })); } else { return(Ok(new { Message = "Answer is incorrect" })); } }
private QuestionCategoriesViewModelContainer MapCategoryToCategoryViewModel(QuestionCategory category) { QuestionCategoriesViewModelContainer model = new QuestionCategoriesViewModelContainer(); if (category != null) { model.QuestionCategoryViewModel = _mapper.Map <QuestionCategoryViewModel>(category); foreach (QuestionAnswer answer in _categoryService.GetAnswers(category.Id).ToList()) { QuestionAnswerViewModel answerModel = _mapper.Map <QuestionAnswerViewModel>(answer); answerModel.IsPrimary = answer.Questions.Any(); model.QuestionAnswerViewModel.Add(answerModel); } } return(model); }
public IActionResult Questionnaire() { List <Question> _questions = _context.Questions.ToList(); List <Answer> _answers = _context.Answers.ToList(); QuestionAnswerViewModel _questionAnswerVM = new QuestionAnswerViewModel() { Date = DateTime.Today, Random = new Random(), Questions = _questions, Answers = _answers }; return(View(_questionAnswerVM)); }
//edit question public ActionResult EditQuestion(string Id, string Content, int?Count, string[] editdynamicField) { QuestionViewModel questionViewModel = new QuestionViewModel(db.Questions.Find(new Guid(Id))); if (questionViewModel != null) { questionViewModel.Content = Content; if (questionViewModel.Type == "Checkbox") { QuestionAnswerViewModel answer; var answers = db.QuestionAnswers.Where(x => x.QuestionId == questionViewModel.Id); int i = 0; foreach (var item in answers) { answer = new QuestionAnswerViewModel(item); if (editdynamicField.Count() > i) { answer.Answer = editdynamicField[i]; answer.UpdateQuestionAnswer(answer); } else { answer.DeleteQuestionAnswer(answer); } i++; } if (answers.Count() < editdynamicField.Count()) { for (int j = i; j < editdynamicField.Count(); j++) { answer = new QuestionAnswerViewModel { Id = Guid.NewGuid(), QuestionId = questionViewModel.Id, Answer = editdynamicField[j] }; answer.AddQuestionAnswer(answer); } } } questionViewModel.UpdateQuestion(questionViewModel); } return(RedirectToAction("Create", "Surveys")); }
public ActionResult AddQuestionAnswer(QuestionCategoriesViewModelContainer model) { if (!String.IsNullOrEmpty(model.QuestionAnswerHelper.AnswerToAdd)) { QuestionAnswerViewModel answerModel = new QuestionAnswerViewModel() { CategoryID = model.QuestionCategoryViewModel.Id, Value = model.QuestionAnswerHelper.AnswerToAdd, IsPrimary = false }; model.QuestionAnswerViewModel.Add(answerModel); } model.QuestionAnswerHelper.AnswerToAdd = ""; model.QuestionAnswerHelper.AnswerToRemove = ""; ModelState.Clear(); return(View("Index", model)); }
public static List <QuestionAnswerViewModel> GetQuestionAnswerViewModel(List <QAModel> lsitQAModel) { List <QuestionAnswerViewModel> results = new List <QuestionAnswerViewModel>(); foreach (var item in lsitQAModel) { QuestionAnswerViewModel qavm = new QuestionAnswerViewModel(); if (!string.IsNullOrEmpty(item.QUES_Type)) { qavm.Title = item.QUES_Desc; } results.Add(qavm); } return(results); }
public IActionResult EditQuestionAnswer(int AnswerId) { var answer = _answerDao.GetById(AnswerId); if (answer != null) { var question = _questionDao.GetBydId(answer.QuestionId); var answerViewModel = new QuestionAnswerViewModel() { QuestionId = question.Id, QuestionContent = question.Content, AnswerContent = answer.Content, AnswerId = answer.Id }; return(View("AddOrUpdateQuestionAnswer", answerViewModel)); } return(RedirectToAction("List")); }
public async Task <IActionResult> AddQuestionAnswer(QuestionsAnswerDTO item) { setViewData(); if (ModelState.IsValid) { if (!_repo.QuestionsAnswerExists(item.QuestionId, item.AnswerId)) { await _repo.AddQuestionAnswer(item); var model = new QuestionAnswerViewModel(); model.List = await _repo.GetListQuestionsAnswer(item.QuestionId); model.QuestionId = item.QuestionId; return(PartialView("_Answers", model)); } return(Content("exists")); } return(Content("Wypełnij wszystkie wymagane pola")); }
public ActionResult Index(int id) { DBEntities DBContext = new DBEntities(); IEnumerable <AnswerDBTable> Selected = DBContext.AnswerDBTables.Where(x => x.QuestionID == id); List <AnswerDBTable> SelectedAnswers = Selected.ToList(); QuestionDBTable QuestionSelected = DBContext.QuestionDBTables.First(x => x.ID == id); QuestionAnswerViewModel QAViewModel = new QuestionAnswerViewModel { Question = QuestionSelected, Answers = SelectedAnswers }; if (SelectedAnswers.Count() == 0) { return(HttpNotFound()); } return(View(QAViewModel)); }
public IActionResult AddOrUpdateQuestionAnswer(QuestionAnswerViewModel answerviewModel) { var answer = new Answer { Id = answerviewModel.AnswerId ?? 0, QuestionId = answerviewModel.QuestionId, Content = answerviewModel.AnswerContent }; if (answerviewModel.AnswerId.HasValue && answerviewModel.AnswerId.Value > 0) { _answerDao.UpdateAnswer(answer); } else { var AnswerId = _answerDao.CreateAnswer(answer); } return(RedirectToAction("Details", new { questionId = answerviewModel.QuestionId })); }
// GET: Questions/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Question question = db.Questions.Find(id); if (question == null) { return(HttpNotFound()); } var qa = new QuestionAnswerViewModel { Question = question, NewAnswer = new Answer() }; qa.NewAnswer.QuestionId = qa.Question.Id; return(View(qa)); }
public ActionResult Details(int id) { if (id == 0) { return(HttpNotFound()); } Question question = _questionService.Get(id); if (question == null) { return(HttpNotFound()); } var viewModel = new QuestionAnswerViewModel() { Question = question }; return(View("Details", viewModel)); }
public IActionResult Edit(int id, QuestionAnswerViewModel model) { var getQuestionsOption = _questionAnswerService.GetQuestionsAnswerById(id); if (getQuestionsOption != null && getQuestionsOption.IsSucceeded) { getQuestionsOption.Result.Content = model.Content; getQuestionsOption.Result.QuestionsId = model.QuestionsId; var updateResult = _questionAnswerService.Update(getQuestionsOption.Result); if (updateResult.IsSucceeded) { return(Ok(updateResult.Result)); } return(updateResult.HttpGetResponse()); } return(getQuestionsOption.HttpGetResponse()); }
//end edit question public ActionResult DeleteQuestion(Guid Id) { QuestionViewModel questionViewModel = new QuestionViewModel(db.Questions.Find(Id)); if (questionViewModel != null) { questionViewModel.DeleteQuestion(questionViewModel); if (questionViewModel.Type == "Checkbox") { QuestionAnswerViewModel answer; var answers = db.QuestionAnswers.Where(x => x.QuestionId == questionViewModel.Id); int i = 0; foreach (var item in answers) { answer = new QuestionAnswerViewModel(item); answer.DeleteQuestionAnswer(answer); } } } return(RedirectToAction("Create", "Surveys")); }
public PartialViewResult Answer(Guid questionId, Guid answerId) { var gameState = Session["GameState"] as GamePlayState; var answer = QuizDb.Answers.SingleOrDefault(x => x.Id == answerId); var game = QuizDb.QuizGames.SingleOrDefault(x => x.Id == gameState.Game.Id); var player = QuizDb.GamePlayers.SingleOrDefault(x => x.Id == gameState.Player.Id); var log = new GameLog(); log.Answer = answer; log.Game = game; log.Player = player; log.LogDateTime = DateTime.Now; QuizDb.GameLogs.Add(log); QuizDb.SaveChanges(); // Update var statService = new StatisticsService(QuizDb); statService.NotifyUpdates(); var questionToDelete = gameState.QuestionsLeft.SingleOrDefault(x => x.Id == answer.Question.Id); gameState.QuestionsLeft.Remove(questionToDelete); // jetzt die Antwort mit Ergebnis zurückschicken // die Frage // die Antwort var model = new QuestionAnswerViewModel(); model.Answers = gameState.CurrentQuestion.Answers; model.GivenAnswer = answer; model.CorrectAnswer = questionToDelete.Answers.FirstOrDefault(x => x.IsCorrect); return(PartialView("_Answer", model)); }
public IActionResult Question(int questionId, string title) { int lintUserId = HttpContext.Session.GetInt32("UserId") ?? 0; QuestionViewModel questionViewModel = new QuestionViewModel(); using (var unitOfWork = new UnitOfWork(new CuriousDriveContext())) { Question question = unitOfWork.Questions.GetQuestionDetails(questionId); questionViewModel.questionId = question.QuestionId; questionViewModel.questionTitle = question.QuestionTitle; questionViewModel.questionHtml = question.QuestionHtml; questionViewModel.createdDate = question.CreatedDate; questionViewModel.userDetailsViewModel = new UserDetailsViewModel(); questionViewModel.userDetailsViewModel.userId = question.User.UserId; questionViewModel.userDetailsViewModel.displayName = question.User.DisplayName; questionViewModel.userDetailsViewModel.urlTitle = Utility.GetURLTitle(question.User.DisplayName); questionViewModel.userDetailsViewModel.profilePictureViewModel = new ProfilePictureViewModel(); questionViewModel.userTagListViewModel = new List <UserTagViewModel>(); foreach (Tag tag in question.Tag) { foreach (TagDetail tagDetail in tag.TagDetail) { UserTagViewModel userTagViewModel = new UserTagViewModel(); userTagViewModel.userId = tagDetail.TaggedUser.UserId; userTagViewModel.userTag = tagDetail.TaggedUser.DisplayName; questionViewModel.userTagListViewModel.Add(userTagViewModel); } } questionViewModel.commentsViewModel = new List <CommentViewModel>(); foreach (Comment comment in question.Comment) { CommentViewModel commentViewModel = new CommentViewModel(); commentViewModel.commentId = comment.CommentId; commentViewModel.commentHtml = comment.CommentHtml; commentViewModel.userId = comment.User.UserId; commentViewModel.displayName = comment.User.DisplayName; commentViewModel.urlTitle = Utility.GetURLTitle(comment.User.DisplayName); questionViewModel.commentsViewModel.Add(commentViewModel); } questionViewModel.questionAnswersViewModel = new List <QuestionAnswerViewModel>(); foreach (QuestionAnswer questionAnswer in question.QuestionAnswer) { QuestionAnswerViewModel questionAnswerViewModel = new QuestionAnswerViewModel(); questionAnswerViewModel.questionId = question.QuestionId; questionAnswerViewModel.questionAnswerId = questionAnswer.QuestionAnswerId; questionAnswerViewModel.answerHtml = questionAnswer.AnswerHtml; questionAnswerViewModel.createdDate = questionAnswer.CreatedDate; questionAnswerViewModel.commentsViewModel = new List <CommentViewModel>(); foreach (Comment comment in questionAnswer.Comment) { CommentViewModel commentViewModel = new CommentViewModel(); commentViewModel.commentId = comment.CommentId; commentViewModel.commentHtml = comment.CommentHtml; commentViewModel.userId = comment.User.UserId; commentViewModel.displayName = comment.User.DisplayName; commentViewModel.urlTitle = Utility.GetURLTitle(comment.User.DisplayName); questionAnswerViewModel.commentsViewModel.Add(commentViewModel); } questionAnswerViewModel.userDetailsViewModel = new UserDetailsViewModel(); questionAnswerViewModel.userDetailsViewModel.userId = questionAnswer.UserId; questionAnswerViewModel.userDetailsViewModel.displayName = questionAnswer.User.DisplayName; questionAnswerViewModel.userDetailsViewModel.urlTitle = Utility.GetURLTitle(questionAnswer.User.DisplayName); questionAnswerViewModel.userDetailsViewModel.profilePictureViewModel = new ProfilePictureViewModel(); questionViewModel.questionAnswersViewModel.Add(questionAnswerViewModel); } questionViewModel.questionClassesViewModel = new List <QuestionClassViewModel>(); foreach (QuestionClass questionClass in question.QuestionClass) { QuestionClassViewModel questionClassViewModel = new QuestionClassViewModel(); questionClassViewModel.classId = questionClass.ClassId; questionClassViewModel.className = questionClass.Class.ClassName; questionViewModel.questionClassesViewModel.Add(questionClassViewModel); } } return(View(questionViewModel)); }
public ChapterContentEdition(ChapterViewModel _selChapterVM) { ListView lvAllChapterQuestions = new ListView(); QuestionAnswerViewModel QuestionsVM = new QuestionAnswerViewModel(_selChapterVM); var lblChapter = new Label { Text = "Chapitre " + _selChapterVM.ChapterName }; List <QuestionAnswerViewModel> AllQuestionsVM = QuestionsVM.GetQuestionsForChapterVM(_selChapterVM); if (AllQuestionsVM == null || (AllQuestionsVM != null) && AllQuestionsVM.Count() == 0) { //QuestionAnswerViewModel test = new QuestionAnswerViewModel(_selChapterVM); ; //test.DeleteAllQuestions(); //SDI: If there is no questions yet,we add a "fake" question which is a link to open the CreateQuestion page QuestionAnswerViewModel fakeToAdd = new QuestionAnswerViewModel(_selChapterVM); fakeToAdd.QuestionText = "Nouvelle question"; AllQuestionsVM = new List <QuestionAnswerViewModel>(); AllQuestionsVM.Add(fakeToAdd); } else { //SDI: we just add the fake chapter at the end of the list QuestionAnswerViewModel fakeToAdd = new QuestionAnswerViewModel(_selChapterVM); fakeToAdd.QuestionText = "Nouvelle question"; AllQuestionsVM.Add(fakeToAdd); } lvAllChapterQuestions.ItemsSource = AllQuestionsVM; lvAllChapterQuestions.ItemTemplate = new DataTemplate(typeof(CustomQuestionCell)); lvAllChapterQuestions.ItemTemplate.SetBinding(ImageCell.TextProperty, "QuestionText"); lvAllChapterQuestions.ItemTemplate.SetValue(ImageCell.TextColorProperty, Color.FromHex("#795548")); lvAllChapterQuestions.ItemTapped += async(sender, e) => { QuestionAnswerViewModel qvm = (QuestionAnswerViewModel)e.Item; //SDI: Creation and Update are using the same create question page since the fields are bound to the object await Navigation.PushAsync(new CreateQuestionAnswer(qvm)); #region Old //if (qvm.QuestionText.Trim().ToLower().Equals("nouvelle question")) //{ // //SDI: if element tapped is to create a new question, we go to the CreateQuestion page // await Navigation.PushAsync(new CreateQuestionAnswer(qvm)); //await DisplayAlert("Info", "nouvelle question", "Ok"); //} //else //SDI:An existing question has been selected, we edit the question //{ // await Navigation.PushAsync(new QuestionAnswerContentEdition(qvm)); //} #endregion ((ListView)sender).SelectedItem = null; }; lvAllChapterQuestions.IsPullToRefreshEnabled = true;//To enable the refreshment of the listview when pulled var stackLayout = new StackLayout { Children = { lblChapter, lvAllChapterQuestions }, BackgroundColor = Color.White }; this.BindingContext = AllQuestionsVM; this.Content = stackLayout; this.Padding = new Thickness(10, Device.OnPlatform(20, 0, 0), 10, 5); this.BackgroundColor = Color.Gray; }
public PartialViewResult userQuestionAnswer(CandidateAnswer objCandidateAnswer) { bool IsLast = false; if (Session["co"] == null) { Session["co"] = 1; } else { var i = Convert.ToInt32(Session["co"]); i++; Session["co"] = i; } if (objCandidateAnswer.AnswerText != null) { var ans = (from obj in obQuizDbEntities.Answers where obj.QuestionId.Equals(objCandidateAnswer.QuestionId) select obj).FirstOrDefault(); Result result = new Result(); result.AnswerText = objCandidateAnswer.AnswerText; result.UserId = Session["CandidateName"].ToString(); // result.QuestionId = objCandidateAnswer.QuestionId; result.QuestionId = Convert.ToInt32(Session["questionid"]); obQuizDbEntities.Results.Add(result); obQuizDbEntities.SaveChanges(); } if (objCandidateAnswer.AnswerText != null) { List <CandidateAnswer> objCandidateAnswers = Session["CadQuestionAnswer"] as List <CandidateAnswer>; if (objCandidateAnswers == null) { objCandidateAnswers = new List <CandidateAnswer>(); } objCandidateAnswers.Add(objCandidateAnswer); Session["CadQuestionanswer"] = objCandidateAnswers; } int pageSize = 1; int pageNumber = 0; int CategoryId = Convert.ToInt32(Session["CategoryId"]); if (Session["CadQuestionAnswer"] == null) { pageNumber = pageNumber + 1; } else { List <CandidateAnswer> canAnswer = Session["CanQuestionAnswer"] as List <CandidateAnswer>; pageNumber = Convert.ToInt32(Session["co"]); // pageNumber = canAnswer.Count + 1; //pageNumber = pageNumber + 1; } List <Question> listOfQuestion = new List <Question>(); listOfQuestion = obQuizDbEntities.Questions.Where(model => model.CategoryId == CategoryId).ToList(); if (pageNumber == listOfQuestion.Count) { IsLast = true; var candidate = Session["CandidateName"].ToString(); // Session["co"] = null; } QuestionAnswerViewModel objAnswerViewModel = new QuestionAnswerViewModel(); Question objQuestion = new Question(); objQuestion = listOfQuestion.Skip((pageNumber - 1) * pageSize).Take(pageSize).FirstOrDefault(); objAnswerViewModel.isLast = IsLast; objAnswerViewModel.QuestionId = objQuestion.QuestionId; Session["questionid"] = objQuestion.QuestionId; objAnswerViewModel.QuestionName = objQuestion.QuestionName; objAnswerViewModel.ListOfQuizOptions = (from obj in obQuizDbEntities.Options where obj.QuestionId == objQuestion.QuestionId select new QuizOption() { OptionName = obj.OptionName, OptionId = obj.OptionId }).ToList(); return(PartialView("QuizQuestionOption", objAnswerViewModel)); }