Exemplo n.º 1
0
        /// <summary>
        /// IAction method for returning a view of an exam
        /// </summary>
        /// <param name="id">Id for a exam</param>
        /// <returns></returns>
        public IActionResult ViewExam(int id)
        {
            var exam = context.ReadExam(id);
            var vm   = new ViewExamViewModel()
            {
                Exam = exam
            };

            var responses = new Dictionary <int, List <QuestionResponse> >();

            foreach (var item in exam.Student.StudentCourses)
            {
                responses.Add(item.Course.Id, context.ReadResponsesByCourse(item.Course.Id, exam.Id));
            }

            vm.Responses = responses;

            return(View(vm));
        }
Exemplo n.º 2
0
        public IActionResult ViewExam(ViewExamViewModel vm)
        {
            //TODO: Fix model binding issue
            var responses = vm.Responses;

            foreach (var item in responses)
            {
                var course = context.ReadResponsesByCourse(item.Key, vm.Exam.Id);

                foreach (var qr in course)
                {
                    foreach (var q in item.Value)
                    {
                        var r = context.ReadResponse(qr.Id);
                        r.Response = q.Response;
                        r.Rating   = q.Rating;
                        context.SaveResponse(r);
                    }
                }
            }


            return(RedirectToAction("ViewExam", new { id = vm.Exam.Id }));
        }