public static SolveTest GetTest(int studentId, DateTime time) { using (Entities e = new Entities()) { try { SolveTest sTest = new SolveTest(); test testDal = new test(); var student = e.students.FirstOrDefault(s => s.userId == studentId); if (student != null) { var teacherId = [email protected]_id; var test = e.tests.FirstOrDefault(t => t.teacherId == teacherId && t.test_date == time.Date && t.test_start_time <time.TimeOfDay && t.test_end_time> time.TimeOfDay); var TTT = e.tests.ToList(); if (test != null) { sTest.test = TestCasting.TestToDTO(test); sTest.questions = QuestionCasting.QuestionsToDTO((test.questions).ToList()); var x = e.answers.ToList(); var questionsIds = sTest.questions.Select(t => t.question_id).ToList(); var y = x.Where(a => questionsIds.Contains(a.question_id)).ToList(); sTest.answers = AnswerCasting.AnswersToDTO(y); return(sTest); } throw new Exception("no test0"); } throw new Exception("no student"); } catch (Exception ex) { throw ex; } } }
public Solve() { InitializeComponent(); Closing += (s, e) => ViewModelLocator.Cleanup(); Messenger.Default.Register <OpenWindowMessage>( this, message => { switch (message.Type) { #region solve test case WindowType.kSolveTest: var solveTestVM = SimpleIoc.Default.GetInstance <SolveTestViewModel>(); var solveTestWindow = new SolveTest() { DataContext = solveTestVM }; string[] parsedMessage = message.Argument.Split('+'); solveTestVM.ClearWindow(); solveTestVM.Test.Id = Int32.Parse(parsedMessage[0]); solveTestVM.UserName = parsedMessage[1]; solveTestVM.RefreshDAO(); solveTestVM.LoadData(); if (solveTestVM.FillWindow()) { var result = solveTestWindow.ShowDialog(); if (result.HasValue && result.Value) { result = true; } else { solveTestVM.Timer.Stop(); } } else { solveTestVM.Timer.Stop(); MessageBox.Show("This test does not have any question!"); } break; #endregion #region solve single test case WindowType.kSolveSingleTest: var solveSingleTestVM = SimpleIoc.Default.GetInstance <SolveTestViewModel>(); var solveSingleTestWindow = new SolveSingleTest() { DataContext = solveSingleTestVM }; parsedMessage = message.Argument.Split('+'); solveSingleTestVM.ClearWindow(); solveSingleTestVM.Test.Id = Int32.Parse(parsedMessage[0]); solveSingleTestVM.UserName = parsedMessage[1]; solveSingleTestVM.RefreshDAO(); solveSingleTestVM.LoadData(); if (solveSingleTestVM.FillWindow()) { var result = solveSingleTestWindow.ShowDialog(); if (result.HasValue && result.Value) { result = true; } else { solveSingleTestVM.Timer.Stop(); } } else { solveSingleTestVM.Timer.Stop(); MessageBox.Show("This test does not have any question!"); } break; #endregion } }); }