protected void Submit_Click(object sender, EventArgs e) { int score_total = 0; Hashtable Question_Save = (Hashtable)Session["Question_Save"]; ArrayList question_one = (ArrayList)Question_Save["questions_one"]; ArrayList question_more = (ArrayList)Question_Save["questions_more"]; ArrayList question_judge = (ArrayList)Question_Save["questions_judge"]; Hashtable hashtable_question_one = Exam_Drector.Get_Score(DataList_Questoin_One, question_one, "questions_one"); Hashtable hashtable_question_more = Exam_Drector.Get_Score(DataList_Questoin_More, question_more, "questions_more"); Hashtable hashtable_question_judge = Exam_Drector.Get_Score(DataList_Questoin_Judge, question_judge, "questions_judge"); ArrayList questions_one_chosed = (ArrayList)hashtable_question_one["questions_one_chosed"]; ArrayList questions_more_chosed = (ArrayList)hashtable_question_more["questions_more_chosed"]; ArrayList questions_judge_chosed = (ArrayList)hashtable_question_judge["questions_judge_chosed"]; Boolean one_finshed = Exam_Drector.IsFinshed(DataList_Questoin_One, "questions_one"); Boolean more_finshed = Exam_Drector.IsFinshed(DataList_Questoin_More, "questions_more"); Boolean judge_finshed = Exam_Drector.IsFinshed(DataList_Questoin_Judge, "questions_judge"); if (one_finshed && more_finshed && judge_finshed) { score_total = Convert.ToInt32(hashtable_question_one["questions_one_score"]) + Convert.ToInt32(hashtable_question_more["questions_more_score"]) + Convert.ToInt32(hashtable_question_judge["questions_judge_score"]); Exam_Drector.Loading_Result(DataList_Questoin_One, question_one, "questions_one", questions_one_chosed); Exam_Drector.Loading_Result(DataList_Questoin_More, question_more, "questions_more", questions_more_chosed); Exam_Drector.Loading_Result(DataList_Questoin_Judge, question_judge, "questions_judge", questions_judge_chosed); score.Text = score_total.ToString(); } else { #pragma warning disable CS0618 // 类型或成员已过时 this.RegisterStartupScript("hello", "<script>alert('还有题目未完成哦!')</script>"); #pragma warning restore CS0618 // 类型或成员已过时 } }
public void Loading() { ArrayList question_one; ArrayList question_more; ArrayList question_judge; question_one = Exam_Drector.GetQuestions("questions_one", 5, 1); question_more = Exam_Drector.GetQuestions("questions_more", 5, 6); question_judge = Exam_Drector.GetQuestions("questions_judge", 5, 11); Question_Save.Add("questions_one", question_one); // 保存题目用来比对答案,存储在哈希表中 Question_Save.Add("questions_more", question_more); Question_Save.Add("questions_judge", question_judge); DataList_Questoin_One.DataSource = question_one; DataList_Questoin_One.DataBind(); DataList_Questoin_More.DataSource = question_more; DataList_Questoin_More.DataBind(); DataList_Questoin_Judge.DataSource = question_judge; DataList_Questoin_Judge.DataBind(); Exam_Drector.Loading_Question(DataList_Questoin_One, question_one, "questions_one"); Exam_Drector.Loading_Question(DataList_Questoin_More, question_more, "questions_more"); Session["Question_Save"] = Question_Save; ViewState["pre_question_one"] = 0; ViewState["pre_question_more"] = 0; ViewState["pre_question_judge"] = 0; }
protected void Page_Load(object sender, EventArgs e) { if (Server.UrlDecode(Request.QueryString["examId"]) != null || Session["Question_Save"] != null) { if (Server.UrlDecode(Request.QueryString["examId"]) != null) { string examId = Server.UrlDecode(Request.QueryString["examId"]); Mongodb mongodb = new Mongodb(); mongodb.GetCollection("exam"); BsonDocument document = mongodb.Query("examId", examId); question_one = Exam_Drector.GetQuestionsOrChoosed(document, "question_one"); question_more = Exam_Drector.GetQuestionsOrChoosed(document, "question_more"); question_judge = Exam_Drector.GetQuestionsOrChoosed(document, "question_judge"); questions_one_chosed = Exam_Drector.GetQuestionsOrChoosed(document, "questions_one_chosed"); questions_more_chosed = Exam_Drector.GetQuestionsOrChoosed(document, "questions_more_chosed"); questions_judge_chosed = Exam_Drector.GetQuestionsOrChoosed(document, "questions_judge_chosed"); score.Text = Request.QueryString["score"].ToString(); } else if (Session["Question_Save"] != null) { Hashtable Question_Save = (Hashtable)Session["Question_Save"]; question_one = (ArrayList)Question_Save["questions_one"]; question_more = (ArrayList)Question_Save["questions_more"]; question_judge = (ArrayList)Question_Save["questions_judge"]; // 获取存储用户选择的项 hashtable_question_one = (Hashtable)Session["hashtable_question_one"]; hashtable_question_more = (Hashtable)Session["hashtable_question_more"]; hashtable_question_judge = (Hashtable)Session["hashtable_question_judge"]; questions_one_chosed = (ArrayList)hashtable_question_one["questions_one_chosed"]; questions_more_chosed = (ArrayList)hashtable_question_more["questions_more_chosed"]; questions_judge_chosed = (ArrayList)hashtable_question_judge["questions_judge_chosed"]; score.Text = Session["score_total"].ToString(); } DataList_Questoin_One.DataSource = question_one; DataList_Questoin_One.DataBind(); DataList_Questoin_More.DataSource = question_more; DataList_Questoin_More.DataBind(); DataList_Questoin_Judge.DataSource = question_judge; DataList_Questoin_Judge.DataBind(); Exam_Drector.Loading_Question(DataList_Questoin_One, question_one, "questions_one"); Exam_Drector.Loading_Question(DataList_Questoin_More, question_more, "questions_more"); Exam_Drector.Loading_Result(DataList_Questoin_One, question_one, "questions_one", questions_one_chosed); Exam_Drector.Loading_Result(DataList_Questoin_More, question_more, "questions_more", questions_more_chosed); Exam_Drector.Loading_Result(DataList_Questoin_Judge, question_judge, "questions_judge", questions_judge_chosed); number.Text = Session["sn"].ToString(); name.Text = Session["username"].ToString(); } else { Response.Redirect("~/Login.aspx"); } }
protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) { } else { if (Session["sn"] != null && Session["username"] != null) { number.Text = "学号:" + Session["sn"].ToString(); name.Text = "姓名:" + Session["username"].ToString(); } else { Response.Redirect("~/Login.aspx"); } ArrayList question_one; ArrayList question_more; ArrayList question_judge; question_one = Exam_Drector.GetQuestions("questions_one", 5, 1); question_more = Exam_Drector.GetQuestions("questions_more", 5, 6); question_judge = Exam_Drector.GetQuestions("questions_judge", 5, 11); Question_Save.Add("questions_one", question_one); // 保存题目用来比对答案,存储在哈希表中 Question_Save.Add("questions_more", question_more); Question_Save.Add("questions_judge", question_judge); DataList_Questoin_One.DataSource = question_one; DataList_Questoin_One.DataBind(); DataList_Questoin_More.DataSource = question_more; DataList_Questoin_More.DataBind(); DataList_Questoin_Judge.DataSource = question_judge; DataList_Questoin_Judge.DataBind(); Exam_Drector.Loading_Question(DataList_Questoin_One, question_one, "questions_one"); Exam_Drector.Loading_Question(DataList_Questoin_More, question_more, "questions_more"); Session["Question_Save"] = Question_Save; ViewState["pre_question_one"] = 0; ViewState["pre_question_more"] = 0; ViewState["pre_question_judge"] = 0; } }
protected void Submit1_Click(object sender, EventArgs e) { if (count_total == 15) { Mysqldb mysqldb = new Mysqldb(); MySqlConnection connection = mysqldb.getConnection(); MySqlCommand cmd = mysqldb.getCommand(connection); ArrayList questions_one_chosed = null; ArrayList questions_more_chosed = null; ArrayList questions_judge_chosed = null; ConnectMongo(); int score_total = 0; string userid = Session["sn"].ToString(); Hashtable Question_Save = (Hashtable)Session["Question_Save"]; ArrayList question_one = (ArrayList)Question_Save["questions_one"]; ArrayList question_more = (ArrayList)Question_Save["questions_more"]; ArrayList question_judge = (ArrayList)Question_Save["questions_judge"]; Hashtable hashtable_question_one = Exam_Drector.Get_Score(DataList_Questoin_One, question_one, "questions_one"); Hashtable hashtable_question_more = Exam_Drector.Get_Score(DataList_Questoin_More, question_more, "questions_more"); Hashtable hashtable_question_judge = Exam_Drector.Get_Score(DataList_Questoin_Judge, question_judge, "questions_judge"); score_total = Convert.ToInt32(hashtable_question_one["questions_one_score"]) + Convert.ToInt32(hashtable_question_more["questions_more_score"]) + Convert.ToInt32(hashtable_question_judge["questions_judge_score"]); Session["hashtable_question_one"] = hashtable_question_one; Session["hashtable_question_more"] = hashtable_question_more; Session["hashtable_question_judge"] = hashtable_question_judge; Session["score_total"] = score_total; count_total = 0; // 对进度条清0 // 存储这次考试记录 DateTime datetime = DateTime.Now; string exam_id = userid.ToString() + "_" + datetime.ToString(); string sql = "insert into exam_record (userId, examId, score, datetime) VALUES (@userid, @exam_id, @score_total, @datetime)"; cmd.CommandText = sql; cmd.Parameters.AddWithValue("@userid", userid); cmd.Parameters.AddWithValue("@exam_id", exam_id); cmd.Parameters.AddWithValue("@score_total", score_total.ToString()); cmd.Parameters.AddWithValue("@datetime", datetime.ToString()); if (mysqldb.ExceSql(cmd, connection)) { //成功插入 mysqldb.Close(); } else { Response.Write("mysql 插入失败"); } mysqldb.ExceSql(cmd, connection); // 将这次考试的试题信息,以及答题信息存储到 mongodb 中 var document = new BsonDocument { { "examId", exam_id }, }; // 用户题目 选择 question_one = ArraylistToObject(question_one); question_more = ArraylistToObject(question_more); question_judge = ArraylistToObject(question_judge); questions_one_chosed = (ArrayList)hashtable_question_one["questions_one_chosed"]; questions_more_chosed = (ArrayList)hashtable_question_more["questions_more_chosed"]; questions_judge_chosed = (ArrayList)hashtable_question_judge["questions_judge_chosed"]; var question_one_save = new List <ArrayList> { question_one }; var question_more_save = new List <ArrayList> { question_more }; var question_judge_save = new List <ArrayList> { question_judge }; var question_one_chosed_save = new List <ArrayList> { questions_one_chosed }; var question_more_chosed_save = new List <ArrayList> { questions_more_chosed }; var question_judge_chosed_save = new List <ArrayList> { questions_judge_chosed }; document.Add("question_one", new BsonArray(question_one_save)); document.Add("question_more", new BsonArray(question_more_save)); document.Add("question_judge", new BsonArray(question_judge_save)); document.Add("questions_one_chosed", new BsonArray(question_one_chosed_save)); document.Add("questions_more_chosed", new BsonArray(question_more_chosed_save)); document.Add("questions_judge_chosed", new BsonArray(question_judge_chosed_save)); //document.Add("question_chosed", new BsonArray(question_chosed)); mongodb.GetCollection("exam"); mongodb.Insert(document); Response.Redirect("~/Result.aspx"); } else { #pragma warning disable CS0618 // 类型或成员已过时 this.RegisterStartupScript("hello", "<script>alert('还有题目未完成哦!')</script>"); #pragma warning restore CS0618 // 类型或成员已过时 } }