internal List <StudentsAnswer> GetAllAnswersOfAStudentToAQuestionOfThisTest( int?IdStudent, int?IdQuestion, int?IdTest) { List <StudentsAnswer> list = new List <StudentsAnswer>(); using (DbConnection conn = Connect()) { DbCommand cmd = conn.CreateCommand(); string query = "SELECT *" + " FROM StudentsAnswers" + " JOIN Answers ON Answers.idAnswer = StudentsAnswers.idAnswer" + " JOIN Questions ON Questions.IdQuestion = Answers.IdQuestion" + " JOIN Tests_Questions ON Questions.IdQuestion = Tests_Questions.IdQuestion" + " WHERE StudentsAnswers.idStudent=" + IdStudent + " AND Questions.IdQuestion=" + IdQuestion + "" + " AND Tests_Questions.IdTest=" + IdTest + "" + ";"; cmd.CommandText = query; DbDataReader dRead; dRead = cmd.ExecuteReader(); while (dRead.Read()) { StudentsAnswer a = GetStudentsAnswerFromRow(dRead); list.Add(a); } } return(list); }
internal StudentsAnswer GetStudentsAnswerFromRow(DbDataReader Row) { StudentsAnswer a = new StudentsAnswer(); a.IdAnswer = Safe.Int(Row["IdAnswer"]); a.IdStudent = Safe.Int(Row["IdStudent"]); a.IdStudentsAnswer = Safe.Int(Row["IdStudentsAnswer"]); a.IdTest = Safe.Int(Row["IdTest"]); a.StudentsBoolAnswer = Safe.Bool(Row["StudentsBoolAnswer"]); a.StudentsTextAnswer = Safe.String(Row["StudentsTextAnswer"]); return(a); }