public void AddTestSessions(int testId) { questions = client.GetQuestionsWithoutParams(); students = client.GetStudents(); testSessions = client.GetTestSessionsForSomeTest(testId); foreach (var testSession in testSessions) { AnswerModel answerModel = new AnswerModel(); answerModel.TestSessionId = testSession.TestSessionId; answerModel.Name = students.FirstOrDefault(x => x.StudentId == testSession.StudentId).Name; answerModel.SurName = students.FirstOrDefault(x => x.StudentId == testSession.StudentId).SurName; answerModel.GroupName = students.FirstOrDefault(x => x.StudentId == testSession.StudentId).GroupName; List <DTOAnswer> answers = client.GetAnswersForTestSession(testSession.TestSessionId).ToList(); answerModel.QuestionCount = answers.Count; answers = answers.Where(x => x.AnswerCorrects == true).ToList(); answerModel.CountCorrectAnswers = answers.Count; answerModel.CountInCorrectAnswers = answerModel.QuestionCount - answerModel.CountCorrectAnswers; foreach (var item in answers) { answerModel.CountScores += questions.FirstOrDefault(q => q.Id == item.QuestionId).QuestionCountScores; } answerModels.Add(answerModel); } if (answerModels.Count != 0) { testsSessionsGrid.ItemsSource = answerModels; } }
public StudentResults(ClientObject _cl) { InitializeComponent(); client = _cl; studentResultModels = new List <StudentResultModel>(); testSessions = client.GetTestSessionsForSomeStudent(); questions = client.GetQuestionsWithoutParams(); this.AddStudentResultMogels(); }