Пример #1
0
        public IActionResult EditChoice()
        {
            String id = HttpContext.Request.Query["id"];

            ViewBag.item = Test.FindTestById(Convert.ToInt32(id));
            return(View());
        }
Пример #2
0
        public IActionResult exam_Result()
        {
            string             js        = HttpContext.Request.Form["data"];
            var                jss       = JsonNet.Deserialize <List <ExamTest> >(js);
            int                testcount = jss.Count();
            List <UserHistory> histories = new List <UserHistory>();
            Counter            judegeC   = new Counter()
            {
                All = 0, right = 0
            };
            Counter choiceC = new Counter()
            {
                All = 0, right = 0
            };
            Counter blankC = new Counter()
            {
                All = 0, right = 0
            };
            int         EachScore = 100 / jss.Count();
            int         score     = 0;
            Users       user      = UserService.GetUser(HttpContext.Session.GetString("account"));
            TestStorage test;

            foreach (var item in jss)
            {
                if (item.value == "")
                {
                    item.value = "未填写";
                }
                test = Test.FindTestById(Convert.ToInt32(item.name));
                if (test.Type == "choice")
                {
                    choiceC.All++;
                    if (test.Answer == item.value)
                    {
                        score += EachScore;
                        choiceC.right++;
                        histories.Add(new UserHistory {
                            Answer = item.value, State = 1, UsersId = user.Id, ExamId = HttpContext.Session.GetInt32("examID"), TestId = test.Id
                        });
                    }
                    else
                    {
                        histories.Add(new UserHistory {
                            Answer = item.value, State = 0, UsersId = user.Id, ExamId = HttpContext.Session.GetInt32("examID"), TestId = test.Id
                        });
                    }
                }
                else if (test.Type == "judege")
                {
                    judegeC.All++;
                    if (test.Answer == item.value)
                    {
                        score += EachScore;
                        judegeC.right++;
                        histories.Add(new UserHistory {
                            Answer = item.value, State = 1, UsersId = user.Id, ExamId = HttpContext.Session.GetInt32("examID"), TestId = test.Id
                        });
                    }
                    else
                    {
                        histories.Add(new UserHistory {
                            Answer = item.value, State = 0, UsersId = user.Id, ExamId = HttpContext.Session.GetInt32("examID"), TestId = test.Id
                        });
                    }
                }
                else if (test.Type == "blank")
                {
                    blankC.All++;
                    if (test.Answer == item.value)
                    {
                        score += EachScore;
                        blankC.right++;
                        histories.Add(new UserHistory {
                            Answer = item.value, State = 1, UsersId = user.Id, ExamId = HttpContext.Session.GetInt32("examID"), TestId = test.Id
                        });
                    }
                    else
                    {
                        histories.Add(new UserHistory {
                            Answer = item.value, State = 0, UsersId = user.Id, ExamId = HttpContext.Session.GetInt32("examID"), TestId = test.Id
                        });
                    }
                }
            }
            UserService.SaveExam(histories);
            MemoryCache.Set <Counter>("judegeC", judegeC);
            MemoryCache.Set <Counter>("choiceC", choiceC);
            MemoryCache.Set <Counter>("blankC", blankC);
            MemoryCache.Set("score", score);
            MemoryCache.Set("EachScore", EachScore);
            MemoryCache.Set("name", ExamService.FindExamById(Convert.ToInt32(HttpContext.Session.GetInt32("examID"))));
            UserService.AddExamHistory(user.Id, Convert.ToInt32(HttpContext.Session.GetInt32("examID")), judegeC.All - judegeC.right + choiceC.All - choiceC.right + blankC.All - blankC.right, score);
            //ViewBag.judegeC = judegeC;
            //ViewBag.choiceC = choiceC;
            //ViewBag.blankC = blankC;
            //ViewBag.score = score;
            //ViewBag.eachscore = EachScore;
            //ViewBag.name =;
            return(Content("/user/exam_Result1"));
            //return View("/user/resultpage?examid"+ HttpContext.Session.GetInt32("examID").ToString());
        }