public KeyValuePair <int, int> SetMCQAnswerSheet(MCQPaperDTO mcqpaperdto, string studentEmailId)
        {
            var answersheet = new MCQAnswerSheet();
            var paper1      = PaperRepo.GetByPaperCode(mcqpaperdto.PaperCode);
            var paper       = Mapper.Map <MCQPaper, MCQPaperDTO>(paper1);

            foreach (var que in paper1.Questions)
            {
                paper.Questions.Add(Mapper.Map <MCQQuestion, MCQQuestionDTO>(que));
            }
            int ObtainedMarks = 0;

            for (int i = 0; i < paper.Questions.Count; i++)
            {
                if (mcqpaperdto.Questions[i].TrueAnswer == paper1.Questions[i].MCQOptionId)
                {
                    ObtainedMarks += mcqpaperdto.Questions[i].Marks;
                }
            }

            answersheet.MarksObtained  = ObtainedMarks;
            answersheet.StudentEmailId = studentEmailId;
            answersheet.SubmittedTime  = DateTime.Now;
            answersheet.MCQPaperId     = paper1.PaperId;

            AnswerSheetRepo.SetMCQAnswerSheet(answersheet);

            KeyValuePair <int, int> ret = new KeyValuePair <int, int>(paper1.TotalMarks, ObtainedMarks);

            return(ret);
        }
        public (List <List <int> > answers, MCQPaperDTO paper) GetMcqPaper(string code)
        {
            MCQPaper paper = PaperRepo.GetByPaperCode(code);

            if (paper == null)
            {
                return(null, null);
            }
            List <List <int> > answerstobenoted = new List <List <int> >();
            MCQPaperDTO        paperdto         = new MCQPaperDTO();

            paperdto = Mapper.Map(paper, paperdto);
            foreach (var que in paper.Questions)
            {
                que.MCQOptions.Shuffle();
                List <int> add = new List <int>();
                foreach (var opt in que.MCQOptions)
                {
                    add.Add(opt.MCQOptionId);
                }
                answerstobenoted.Add(add);
                paperdto.Questions.Add(Mapper.Map <MCQQuestion, MCQQuestionDTO>(que));
            }
            paperdto.Questions.ForEach(que => que.TrueAnswer = -1);

            return(answerstobenoted, paperdto);
        }