Example #1
0
        /// <summary>
        /// Returns the contestants on the "Wrong answers list" for a QuestionInstance
        /// </summary>
        /// <param name="quizInstanceId"></param>
        /// <param name="questionId"></param>
        /// <returns></returns>
        public List <Contestant> GetContestants(int quizInstanceId, int questionId)
        {
            List <Contestant> contestants = new List <Contestant>();
            SqlCommand        command     = new SqlCommand();

            command.CommandText =
                @"SELECT Id, Name, Contestant.QuizInstanceId 
                FROM Contestant INNER JOIN ContestantQuestionInstance 
                ON Contestant.Id = ContestantQuestionInstance.ContestantId 
                WHERE ContestantQuestionInstance.QuizInstanceId = @QuizInstanceId 
                AND ContestantQuestionInstance.QuestionId = @QuestionId";
            command.Parameters.AddWithValue("@QuizInstanceId", quizInstanceId);
            command.Parameters.AddWithValue("@QuestionId", questionId);

            return(repository.MultiRead(command));
            //string commandText =
            //    @"SELECT Id, Name, Contestant.QuizInstanceId
            //    FROM Contestant INNER JOIN ContestantQuestionInstance
            //    ON Contestant.Id = ContestantQuestionInstance.ContestantId
            //    WHERE ContestantQuestionInstance.QuizInstanceId = "+quizInstanceId+@"
            //    AND ContestantQuestionInstance.QuestionId = "+questionId;
            //foreach(Object obj in Repository.MultiRead(commandText, new Contestant()))
            //{
            //    contestants.Add((Contestant)obj);
            //}
        }
Example #2
0
        /// <summary>
        /// Extracts all questions from DB
        /// </summary>
        /// <returns>List of questions</returns>
        public List <Question> GetAll()
        {
            List <Question> questions = new List <Question>();
            SqlCommand      command   = new SqlCommand();

            command.CommandText = @"SELECT * FROM Question";
            //foreach (Object obj in Repository.MultiRead(commandText, new Question()))
            //{
            //    questions.Add((Question)obj);
            //}
            return(repository.MultiRead(command));
        }
Example #3
0
        /// <summary>
        /// Gets all quizzes from the database
        /// </summary>
        /// <returns>A list of quizzes</returns>
        public List <Quiz> GetAll()
        {
            var command = new SqlCommand();

            command.CommandText = @"SELECT * FROM Quiz WHERE Exclude = 0";
            List <Quiz> quizzes = repository.MultiRead(command);

            foreach (Quiz quiz in quizzes)
            {
                quiz.Author = new DBUser().GetById(quiz.AuthorId);
            }

            return(repository.MultiRead(command));
        }
        internal List <QuestionInstance> GetQuestionInstances(int quizInstanceId)
        {
            var command = new SqlCommand();

            command.CommandText = @"SELECT * FROM QuestionInstance
                                    WHERE QuizInstanceId=@QuizInstanceId";
            command.Parameters.AddWithValue("@QuizInstanceId", quizInstanceId);

            DBContestant            dbContestant      = new DBContestant();
            List <QuestionInstance> questionInstances = repository.MultiRead(command);

            foreach (QuestionInstance obj in questionInstances)
            {
                obj.CorrectAnswer = dbContestant.GetContestant(quizInstanceId, obj.QuestionId);
                obj.WrongAnswers  = dbContestant.GetContestants(obj.QuizInstanceId, obj.QuestionId);
            }
            return(questionInstances);
        }
Example #5
0
        public List <QuizInstance> GetQuizInstancesByUserId(int userId)
        {
            SqlCommand command = new SqlCommand();

            command.CommandText = "SELECT * FROM QuizInstance WHERE UserId = @userId";
            command.Parameters.AddWithValue("@userId", userId);
            List <QuizInstance> quizInstances = repository.MultiRead(command);

            foreach (QuizInstance quizInstance in quizInstances)
            {
                quizInstance.Quiz = new DBQuiz().GetQuizById(quizInstance.QuizId);
            }

            return(quizInstances);
        }
Example #6
0
        /// <summary>
        /// Returns all answers for a question
        /// </summary>
        internal List <Answer> GetAnswers(int questionId)
        {
            List <Answer> answers = new List <Answer>();

            SqlCommand command = new SqlCommand();

            command.CommandText = @"SELECT * FROM Answer WHERE QuestionId = @id";
            command.Parameters.AddWithValue("@id", questionId);

            answers = repository.MultiRead(command);

            //foreach (Object obj in repository.MultiRead(command))
            //{
            //    answers.Add((Answer)obj);
            //}
            return(answers);
        }