1.本周完成任务:
(1)试卷管理
(2)学生端个人信息修改
(3)学生进行考试
(4) 试卷成绩查看
(5) 错题查看
(6) 成绩统计
(7) 项目部署调试
2.核心源码
1.试卷列表显示
后台代码:
1 public ActionResult Index(int page = 1) 2 { 3 IPagedList list = PaperRuleService.GetList(page); 4 return View(list); 5 } 6 public ActionResult DeleteRuleDetail(int id) 7 { 8 try 9 { 10 RuleDetailService.Delete(id); 11 } 12 catch (Exception ex) 13 { 14 15 return Json(new { msg = "删除失败" + ex, success = false }); 16 } 17 return Json(new { msg = "删除成功", success = false }); 18 } 19 public ActionResult AddPaper() 20 { 21 return View(); 22 } 23 public ActionResult RuleDetail(int id) 24 { 25 ViewBag.Paper =PaperRuleService.FindPaperRuleByID(id); 26 ViewData["Num"] = RuleDetailService.GetDetailQuestionCount(id).ToString(); 27 28 var list = RuleDetailService.GetList(id); 29 return View(list); 30 } 31 /// <summary> 32 /// 编辑试卷规则详情信息 33 /// </summary> 34 /// <param name="id"></param> 35 /// <returns></returns> 36 public ActionResult EditRuleDetail(int id) 37 { 38 var list = LibraryService.GetAll(); 39 ViewBag.data = RuleDetailService.GetDetailByID(id); 40 return View(list); 41 } 42 [HttpPost] 43 public ActionResult EditRuleDetail(int questionnum, int libraryid, int ruleid,int paperruleid,int oldnum) 44 { 45 try 46 { 47 ///查询规则详情中 试卷题目数量 48 int num = RuleDetailService.GetDetailQuestionCount(paperruleid); 49 //查询试卷规则 题目总数 50 51 var data = PaperRuleService.FindPaperRuleByID(paperruleid); 52 if (questionnum > data.QuestionNum - num+ oldnum) 53 { 54 return Json(new { msg = "修改失败,要添加的题目数量大于试卷题目总数", success = false }); 55 } 56 else 57 { 58 Exam_RuleDetail detail = new Exam_RuleDetail { QuestionNum = questionnum, LibraryID = libraryid, PaperRuleID = paperruleid, RuleID=ruleid }; 59 RuleDetailService.Update(detail); 60 } 61 } 62 catch (Exception ex) 63 { 64 return Json(new { msg = "修改失败" + ex, success = false }); 65 66 } 67 return Json(new { msg = "修改成功", success = false }); 68 } 69 70 [HttpPost] 71 public ActionResult AddPaper(string rulename, string rulestarttime, int time, int Score, int questionnum) 72 { 73 try 74 { 75 DateTime dt = Convert.ToDateTime(rulestarttime); 76 Exam_PaperRule paperRule = new Exam_PaperRule 77 { 78 QuestionNum = questionnum, 79 RuleStartDate = dt, 80 RuleEndDate = dt.AddMinutes(time), 81 RuleName = rulename, 82 Score = Score, 83 States = true 84 }; 85 PaperRuleService.InsertPaperRule(paperRule); 86 } 87 catch (Exception ex) 88 { 89 return Json(new { msg = "添加失败" + ex, success = false }); 90 91 } 92 return Json(new { msg = "添加成功", success = true }); 93 } 94 /// <summary> 95 /// 编辑试卷规则 96 /// </summary> 97 /// <param name="id"></param> 98 /// <returns></returns> 99 public ActionResult EditPaper(int id) 100 { 101 var list = PaperRuleService.FindPaperRuleByID(id); 102 return View(list); 103 } 104 [HttpPost] 105 public ActionResult EditPaper(int id,string rulename, string rulestarttime, int time, int Score, int questionnum) 106 { 107 try 108 { 109 DateTime dt = Convert.ToDateTime(rulestarttime); 110 Exam_PaperRule paperRule = new Exam_PaperRule 111 { 112 QuestionNum = questionnum, 113 RuleStartDate = dt, 114 RuleEndDate = dt.AddMinutes(time), 115 RuleName = rulename, 116 Score = Score, 117 States = true, 118 PaperRuleID=id 119 }; 120 PaperRuleService.Update(paperRule); 121 } 122 catch (Exception ex) 123 { 124 return Json(new { msg = "添加失败" + ex, success = false }); 125 126 } 127 return Json(new { msg = "添加成功", success = true }); 128 } 129 public ActionResult AddPaperRule() 130 { 131 132 ViewBag.Library = LibraryService.GetAllEnable(); 133 var list = PaperRuleService.GetAll(); 134 135 return View(list); 136 } 137 [HttpPost] 138 public ActionResult AddPaperRule(int questionnum, int libraryid, int paperruleid) 139 { 140 try 141 { 142 int libraryquestionnum = QuestionService.GetCountByLibraryID(libraryid); 143 144 ///查询规则详情中 试卷题目数量 145 int num = RuleDetailService.GetDetailQuestionCount(paperruleid); 146 //查询试卷规则 题目总数 147 148 var data = PaperRuleService.FindPaperRuleByID(paperruleid); 149 if (questionnum > data.QuestionNum - num) 150 { 151 return Json(new { msg = "添加失败,要添加的题目数量大于试卷题目总数", success = false }); 152 } 153 else if(libraryquestionnum < questionnum) 154 { 155 return Json(new { msg = "添加失败,题库中的题目数量小于您输入的数量", success = false }); 156 } 157 else 158 { 159 Exam_RuleDetail detail = new Exam_RuleDetail { QuestionNum = questionnum, LibraryID = libraryid, PaperRuleID = paperruleid }; 160 RuleDetailService.AddRuleDetail(detail); 161 } 162 } 163 catch (Exception ex) 164 { 165 return Json(new { msg = "添加失败" + ex, success = false }); 166 167 } 168 return Json(new { msg = "添加成功", success = true }); 169 } 170 171 /// <summary> 172 /// 禁用试卷 173 /// </summary> 174 /// <param name="id"></param> 175 /// <returns></returns> 176 public ActionResult EnablePaper(int id) 177 { 178 try 179 { 180 int res = PaperRuleService.EnablePaperRule(id); 181 } 182 catch (Exception ex) 183 { 184 return Json(new { msg = "启用失败" + ex, success = false }); 185 186 } 187 return Json(new { msg = "启用成功", success = true }); 188 } 189 /// <summary> 190 /// 禁用试卷 191 /// </summary> 192 /// <param name="id"></param> 193 /// <returns></returns> 194 public ActionResult DisablePaper(int id) 195 { 196 try 197 { 198 int res = PaperRuleService.DisablePaperRule(id); 199 } 200 catch (Exception ex) 201 { 202 return Json(new { msg = "禁用失败" + ex, success = false }); 203 204 } 205 return Json(new { msg = "禁用成功", success = true }); 206 }
BLL层代码:
1 public class PaperRuleService 2 { 3 /// <summary> 4 /// 获取所有试卷 5 /// </summary> 6 /// <param name="lmid"></param> 7 /// <param name="page"></param> 8 /// <returns></returns> 9 public static IPagedList GetList(int page = 1) 10 { 11 using (ExamSysDBContext db = new ExamSysDBContext()) 12 { 13 int pagesize = 10; 14 IPagedList list = db.Exam_PaperRule.OrderBy(x => x.PaperRuleID).ToPagedList(page, pagesize); 15 return list; 16 } 17 18 } 19 20 /// <summary> 21 /// 获取所有试卷 状态正常的 22 /// </summary> 23 /// <param name="lmid"></param> 24 /// <param name="page"></param> 25 /// <returns></returns> 26 public static IPagedList GetListEnable(int page = 1) 27 { 28 using (ExamSysDBContext db = new ExamSysDBContext()) 29 { 30 int pagesize = 10; 31 IPagedList list = db.Exam_PaperRule.Where(x=>x.States==true).OrderBy(x => x.PaperRuleID).ToPagedList(page, pagesize); 32 return list; 33 } 34 35 } 36 public static List<Exam_PaperRule> GetAll() 37 { 38 using (ExamSysDBContext db = new ExamSysDBContext()) 39 { 40 var list = db.Exam_PaperRule.ToList(); 41 return list; 42 } 43 44 } 45 /// <summary> 46 /// 增加试卷 47 /// </summary> 48 /// <param name="library"></param> 49 /// <returns></returns> 50 public static int InsertPaperRule(Exam_PaperRule paperRule) 51 { 52 using (ExamSysDBContext dBContext = new ExamSysDBContext()) 53 { 54 dBContext.Exam_PaperRule.Add(paperRule); 55 return dBContext.SaveChanges(); 56 } 57 58 } 59 60 /// <summary> 61 /// 通过ID找到该试卷 62 /// </summary> 63 /// <param name="id"></param> 64 /// <returns></returns> 65 public static Exam_PaperRule FindPaperRuleByID(int id) 66 { 67 using (ExamSysDBContext dBContext = new ExamSysDBContext()) 68 { 69 var data = dBContext.Exam_PaperRule.Where(x => x.PaperRuleID == id).FirstOrDefault(); 70 return data; 71 } 72 73 } 74 /// <summary> 75 /// 禁用试卷 76 /// </summary> 77 /// <param name="id"></param> 78 /// <returns></returns> 79 public static int DisablePaperRule(int id) 80 { 81 using (ExamSysDBContext dBContext = new ExamSysDBContext()) 82 { 83 var data = dBContext.Exam_PaperRule.Where(x => x.PaperRuleID == id).FirstOrDefault(); 84 85 data.States = false; 86 return dBContext.SaveChanges(); 87 } 88 } 89 /// <summary> 90 /// 启用试卷 91 /// </summary> 92 /// <param name="id"></param> 93 /// <returns></returns> 94 public static int EnablePaperRule(int id) 95 { 96 using (ExamSysDBContext dBContext = new ExamSysDBContext()) 97 { 98 99 var data = dBContext.Exam_PaperRule.Where(x => x.PaperRuleID == id).FirstOrDefault(); 100 101 data.States = true; 102 return dBContext.SaveChanges(); 103 } 104 105 } 106 /// <summary> 107 /// 修改试卷信息 108 /// </summary> 109 /// <param name="library"></param> 110 /// <returns></returns> 111 public static int Update(Exam_PaperRule paperRule) 112 { 113 using (ExamSysDBContext dBContext = new ExamSysDBContext()) 114 { 115 116 var data = dBContext.Exam_PaperRule.Where(x => x.PaperRuleID == paperRule.PaperRuleID).FirstOrDefault(); 117 data.RuleName = paperRule.RuleName; 118 data.RuleStartDate = paperRule.RuleStartDate; 119 data.RuleEndDate = paperRule.RuleEndDate; 120 data.Score = paperRule.Score; 121 data.QuestionNum = paperRule.QuestionNum; 122 123 return dBContext.SaveChanges(); 124 } 125 } 126 }
2.学生信息修改
后台代码:
1 public ActionResult Edit(string uname, string Name, string phone, string id) 2 { 3 Exam_User u = new Exam_User { UserID = System.Convert.ToInt32(id), RealName = Name, UserName = uname, Phone = phone }; 4 try 5 { 6 StudentMannerService.Update(u); 7 } 8 catch (Exception ex) 9 { 10 return Json(new { msg = "修改失败" + ex, success = false }); 11 12 } 13 return Json(new { msg = "修改成功", success = true }); 14 15 }
3.学生考试
查看已经考过的试卷
进入考试:
提交试卷:
完成考试即可查看试卷 获取成绩
后台代码:
public class ExamController : Controller { private static Dictionary<int, List<Exam_Answer>> listanswer = new Dictionary<int, List<Exam_Answer>>(); // GET: Exam public ActionResult Index(int page = 1) { var currentuser = Session[CommonFeild.SessionName] as Exam_User; ViewBag.ID = currentuser.UserID; IPagedList list = PaperRuleService.GetListEnable(page); return View(list); } [HttpGet] /// <summary> /// 开始考试 /// </summary> /// <param name="ruleid"></param> /// <returns></returns> public ActionResult BeginExam(int ruleid) { var currentuser = Session[CommonFeild.SessionName] as Exam_User; var data = PaperRuleService.FindPaperRuleByID(ruleid); ViewBag.Rule = data; ViewBag.date = data.RuleEndDate.ToString("yyyy/MM/dd HH:mm:ss"); var list = ExamPaperService.GeneratePaper(ruleid, currentuser.UserID); if(!listanswer.ContainsKey(currentuser.UserID)) { listanswer.Add(currentuser.UserID, list); } //获取questioID数组 List<Exam_Question> questionlist = new List<Exam_Question>(); List<ExamPaperBLL> paperbll = new List<ExamPaperBLL>(); foreach (var item in listanswer[currentuser.UserID]) { ExamPaperBLL examPaperBLL = new ExamPaperBLL(); examPaperBLL.Exam_Question = QuestionService.GetdataByID(item.QuestionID); examPaperBLL.AnswerOptionID = item.AnswerOptionID; paperbll.Add(examPaperBLL); // questionlist.Add(QuestionService.GetdataByID(item.QuestionID)); } return View(paperbll); } /// <summary> /// 单选题 /// </summary> /// <param name="data"></param> public void GetRadioData(string data) { var currentuser = Session[CommonFeild.SessionName] as Exam_User; string[] arry = data.Split(','); string optionid = arry[0]; int questionid = Convert.ToInt32(arry[1]); //防止并发 lock (this) { var answer = listanswer[currentuser.UserID].Where(x => x.QuestionID == questionid).FirstOrDefault(); answer.AnswerOptionID = optionid; } } /// <summary> /// 多选题 /// </summary> /// <param name="data"></param> /// <param name="check"></param> public void GetChechData(string data, bool check) { var currentuser = Session[CommonFeild.SessionName] as Exam_User; string[] arry = data.Split(','); string optionid = arry[0]; int questionid = Convert.ToInt32(arry[1]); //判断是否是选中 或者取消 if (check) { //防止并发 lock (this) { var answer = listanswer[currentuser.UserID].Where(x => x.QuestionID == questionid).FirstOrDefault(); answer.AnswerOptionID += optionid + ","; } } else { //防止并发 lock (this) { var answer = listanswer[currentuser.UserID].Where(x => x.QuestionID == questionid).FirstOrDefault(); string temp = answer.AnswerOptionID; if (temp.Contains(optionid)) { int index = temp.IndexOf(optionid); string newstr = temp.Remove(index, optionid.Length + 1); answer.AnswerOptionID = newstr; } } } } /// <summary> /// 保存 /// </summary> /// <returns></returns> [HttpPost] public ActionResult Save() { var currentuser = Session[CommonFeild.SessionName] as Exam_User; try { foreach (var item in listanswer[currentuser.UserID]) { if (item.AnswerOptionID != "") { if (item.AnswerOptionID.EndsWith(",")) { string temp = item.AnswerOptionID; item.AnswerOptionID = temp.Remove(temp.Length - 1, 1); } } AnswerService.Update(item); } } catch (Exception ex) { return Json(new { success = false, msg = "保存失败" + ex }); } return Json(new { success = true, msg = "保存成功"}); } [HttpPost] public ActionResult GetCount() { var currentuser = Session[CommonFeild.SessionName] as Exam_User; int count = listanswer[currentuser.UserID].Where(x => x.AnswerOptionID == "").Count(); return Json(new { success = true,num=count }); } /// <summary> /// 提交 /// </summary> /// <returns></returns> [HttpPost] public ActionResult Conmit() { var currentuser = Session[CommonFeild.SessionName] as Exam_User; int paperid = 0; try { foreach (var item in listanswer[currentuser.UserID]) { paperid = item.PaperID; if (item.AnswerOptionID != "") { if (item.AnswerOptionID.EndsWith(",")) { string temp = item.AnswerOptionID; item.AnswerOptionID = temp.Remove(temp.Length - 1, 1); } } //提交试卷 AnswerService.Update(item); } //更新试卷状态 获取分数 AnswerService.GetScore(paperid, currentuser.UserID); } catch (Exception ex) { return Json(new { success = false, msg = "提交失败" + ex }); } return Json(new { success = true, msg = "提交成功" }); } /// <summary> /// 试卷详情 /// </summary> /// <param name="PaperID">试卷编号</param> /// <returns></returns> public ActionResult ExamDetail(int ruleid) { var currentuser = Session[CommonFeild.SessionName] as Exam_User; //获取考试信息 var paper = ExamPaperService.CheckPaper(ruleid,currentuser.UserID); ViewBag.User = currentuser; ViewBag.Rule = PaperRuleService.FindPaperRuleByID(paper.RuleID); ViewBag.Score = paper.UserScore; //获取答题信息 List<Exam_Answer> list = AnswerService.GetAnswer(currentuser.UserID,paper.PaperID); //加载试卷模型 List<ExamPaperBLL> paperbll = new List<ExamPaperBLL>(); foreach (var item in list) { ExamPaperBLL examPaperBLL = new ExamPaperBLL(); examPaperBLL.Exam_Question = QuestionService.GetdataByID(item.QuestionID); examPaperBLL.AnswerOptionID = item.AnswerOptionID; paperbll.Add(examPaperBLL); } return View(paperbll); } }
Bll方法:
public class ExamPaperService { /// <summary> /// 根据试卷规则编号生成试卷,并将题目生成到答题信息表中 /// </summary> /// <param name="ruleid"></param> /// <param name="UserID"></param> public static List<Exam_Answer> GeneratePaper(int ruleid, int UserID) { //定义答题卡 List<Exam_Answer> AnswerList = new List<Exam_Answer>(); //定义试卷变量 List<Exam_Question> QuestionList = new List<Exam_Question>(); //定义组卷详情变量 List<Exam_RuleDetail> RuledetailList = RuleDetailService.GetDetailQuestion(ruleid); int answercount = 0; //查询试卷总题目数量 int num = PaperRuleService.FindPaperRuleByID(ruleid).QuestionNum; //判断试卷信息表是否已经存在,如果不存在需要创建(需要考虑中途退出的同学) Exam_Paper paper = CheckPaper(ruleid, UserID); if (paper == null) { paper = CreatePaper(ruleid, UserID); //生成答题卡 } //判断答题卡是否存在信息 answercount = AnswerService.GetUserQuestionCount(UserID, paper.PaperID); //如果存在的话 将试卷信息加载出来 if (answercount == num) { var data = AnswerService.GetAnswer(UserID, paper.PaperID); AnswerList.AddRange(data); } ///如果不存在 随机生成试题 else { using (ExamSysDBContext db = new ExamSysDBContext()) { //先将答题卡清空 AnswerService.Clear(UserID, paper.PaperID); //根据规则详情 随机生成试题 foreach (var item in RuledetailList) { var temp = db.Exam_Question.Where(x => x.LibraryID == item.LibraryID).OrderBy(x => Guid.NewGuid()).Take(item.QuestionNum).ToList(); QuestionList.AddRange(temp); } //将试题 添加到答题卡 foreach (var question in QuestionList) { Exam_Answer answer = new Exam_Answer { AnswerOptionID = "", LibraryID = question.LibraryID, PaperID = paper.PaperID, UserID = UserID, QuestionID = question.QuestionID, OptionID = QuestionOptionsService.GetOptionID(question.QuestionAnswer, question.QuestionID), }; AnswerList.Add(answer); } //将答题信息添加到数据库 db.Exam_Answer.AddRange(AnswerList); db.SaveChanges(); } } return AnswerList; } /// <summary> /// 检查试卷是否已经生成,将试卷信息返回 /// </summary> /// <param name="ruleid"></param> /// <param name="UserID"></param> /// <returns></returns> public static Exam_Paper CheckPaper(int ruleid, int userid) { using (ExamSysDBContext db = new ExamSysDBContext()) { return db.Exam_Paper.Where(x => x.RuleID == ruleid && x.UserID == userid).FirstOrDefault(); } } /// <summary> /// 创建试卷 /// </summary> /// <param name="ruleid"></param> /// <param name="userid"></param> /// <returns></returns> public static Exam_Paper CreatePaper(int ruleid, int userid) { //获取试卷规则信息 var rule = PaperRuleService.FindPaperRuleByID(ruleid); //获取用户信息 var user = UsersService.GetUserByID(userid); //添加试卷规则 Exam_Paper paper = new Exam_Paper { States = false, RealName = user.RealName, UserID = user.UserID, RuleID = rule.PaperRuleID, TotalScore = rule.Score, UserScore = 0 }; var Newpaper = AddPaper(paper); return Newpaper; } /// <summary> /// 添加试卷 /// </summary> /// <param name="paper"></param> /// <returns></returns> public static Exam_Paper AddPaper(Exam_Paper paper) { using (ExamSysDBContext db = new ExamSysDBContext()) { db.Exam_Paper.Add(paper); db.SaveChanges(); return paper; } } /// <summary> /// 更新试卷分数 /// </summary> /// <param name="paperid"></param> /// <param name="score"></param> public static void UpdateScore(int paperid, int score) { using (ExamSysDBContext db = new ExamSysDBContext()) { var data = db.Exam_Paper.Where(x => x.PaperID == paperid).FirstOrDefault(); data.UserScore = score; db.SaveChanges(); } } /// <summary> /// 获取试卷规则编号 /// </summary> /// <param name="paperid"></param> /// <returns></returns> public static Exam_Paper GetPaper(int paperid) { using (ExamSysDBContext db = new ExamSysDBContext()) { var data = db.Exam_Paper.Where(x => x.PaperID == paperid).FirstOrDefault(); return data; } } /// <summary> /// 获取试卷状态 已提交还是未提交 /// </summary> /// <param name="ruleid"></param> /// <param name="userid"></param> /// <returns></returns> public static bool CkeckScore(int ruleid, int userid) { using (ExamSysDBContext db = new ExamSysDBContext()) { var data = db.Exam_Paper.Where(x => x.RuleID == ruleid && x.UserID == userid).FirstOrDefault(); if(data==null) { return false; } else { return data.States; } } } /// <summary> /// 统计成绩信息 /// </summary> /// <param name="ruleid"></param> /// <returns></returns> public static ScoreTotleModel GetScoreModel(int ruleid) { ScoreTotleModel score = new ScoreTotleModel(); using (ExamSysDBContext db = new ExamSysDBContext()) { score.MaxScore = db.Exam_Paper.Where(x => x.RuleID == ruleid).Select(x => x.UserScore).Max(); score.MinScore = db.Exam_Paper.Where(x => x.RuleID == ruleid).Select(x => x.UserScore).Min(); score.ScoreAvg = db.Exam_Paper.Where(x => x.RuleID == ruleid).Select(x => x.UserScore).Average(); score.Score60 = db.Exam_Paper.Where(x => x.RuleID == ruleid && x.UserScore < 60).Count(); score.Score6070 = db.Exam_Paper.Where(x => x.RuleID == ruleid && 60 <= x.UserScore && x.UserScore < 70).Count(); score.Score7080 = db.Exam_Paper.Where(x => x.RuleID == ruleid && 70 <= x.UserScore && x.UserScore < 80).Count(); score.Score8090 = db.Exam_Paper.Where(x => x.RuleID == ruleid && 80 <= x.UserScore && x.UserScore < 90).Count(); score.Score90100 = db.Exam_Paper.Where(x => x.RuleID == ruleid && 90 <= x.UserScore && x.UserScore < 100).Count(); score.Score100 = db.Exam_Paper.Where(x => x.RuleID == ruleid && 100 <= x.UserScore).Count(); score.StudentNum = db.Exam_Paper.Where(x => x.RuleID == ruleid).Count(); return score; } } }
4.试卷成绩查看
后台代码:
/// <summary> /// 试卷详情 /// </summary> /// <param name="PaperID">试卷编号</param> /// <returns></returns> public ActionResult ExamDetail(int ruleid) { var currentuser = Session[CommonFeild.SessionName] as Exam_User; //获取考试信息 var paper = ExamPaperService.CheckPaper(ruleid,currentuser.UserID); ViewBag.User = currentuser; ViewBag.Rule = PaperRuleService.FindPaperRuleByID(paper.RuleID); ViewBag.Score = paper.UserScore; //获取答题信息 List<Exam_Answer> list = AnswerService.GetAnswer(currentuser.UserID,paper.PaperID); //加载试卷模型 List<ExamPaperBLL> paperbll = new List<ExamPaperBLL>(); foreach (var item in list) { ExamPaperBLL examPaperBLL = new ExamPaperBLL(); examPaperBLL.Exam_Question = QuestionService.GetdataByID(item.QuestionID); examPaperBLL.AnswerOptionID = item.AnswerOptionID; paperbll.Add(examPaperBLL); } return View(paperbll); }
5.错题查看:
后台代码:
public ActionResult MyError() { var currentuser = Session[CommonFeild.SessionName] as Exam_User; //获取答题信息 List<Exam_Answer> list = AnswerService.GetError(currentuser.UserID); //加载试卷模型 List<ExamPaperBLL> paperbll = new List<ExamPaperBLL>(); foreach (var item in list) { ExamPaperBLL examPaperBLL = new ExamPaperBLL(); examPaperBLL.Exam_Question = QuestionService.GetdataByID(item.QuestionID); examPaperBLL.AnswerOptionID = item.AnswerOptionID; paperbll.Add(examPaperBLL); } return View(paperbll); }
6.成绩统计
后台代码:
public class ExamMannageController : Controller { // GET: ExamMannage public ActionResult Index(int page = 1) { IPagedList list = PaperRuleService.GetList(page); return View(list); } /// <summary> /// 统计分数 /// </summary> /// <param name="ruleid"></param> /// <returns></returns> public ActionResult Totle(int ruleid) { Exam_PaperRule rule = PaperRuleService.FindPaperRuleByID(ruleid); ViewBag.Info = rule; ScoreTotleModel score = ExamPaperService.GetScoreModel(ruleid); return View(score); } }
7.项目部署
1.发布项目
发布成功后部署到服务器
点击确定即可访问
3.遇到问题
无
4.解决方案
无
5.Github项目地址:https://github.com/wei19941001/ExamSys
6.服务器地址:http://119.45.138.19/
7.项目燃尽图