private ICollection <ExamSolutionRecordInfo> GetSolutionRecord(ExamDetailSubmitInfo detail) { List <ExamSolutionRecordInfo> solutionRecords = new List <ExamSolutionRecordInfo>(); foreach (int solutionId in detail.solutionId) { SolutionInfo solution = _questionApp.QuerySolution(p => p.QuestionId.Equals(detail.questionId) && p.SolutionId.Equals(solutionId)); ExamSolutionRecordInfo recordInfo = new ExamSolutionRecordInfo(); recordInfo.SolutionId = solutionId; recordInfo.IsCorrect = solution.IsCorrect; recordInfo.CreateUser = _loginUser; solutionRecords.Add(recordInfo); } return(solutionRecords); }
private double GeneralSolutionScore(ExamDetailSubmitInfo detail) { double score = 0; foreach (int solutionId in detail.solutionId) { QuestionInfo question = _questionApp.Load(detail.questionId); SolutionInfo solution = _questionApp.QuerySolution(p => p.QuestionId.Equals(detail.questionId) && p.SolutionId.Equals(solutionId)); if (solution.IsCorrect) { score += solution.Score; } else { score -= solution.Score; } } return(score); }