protected void btnAddQuestion_Click(object sender, EventArgs e) { if (txtbxQuestion.Text != "") { QuestionDAL qDAL = new QuestionDAL(); SubThemeDAL stDAL = new SubThemeDAL(); QuestionABC quest = new QuestionABC(0, txtbxQuestion.Text, stDAL.GetSubThemeIdBySubThemeNameViaStoredProc(ddlSubTheme.SelectedValue)); qDAL.InsertQuestionViaStoredProc(quest); txtbxQuestion.Text = ""; } GetViewOfQuestion(); GetViewOfAnswers(); }
protected void btnComplete_Click(object sender, EventArgs e) { //Достаем все радиобаттоны из таблицы List <RadioButton> rbtnList = new List <RadioButton>(); rbtnList = GetAllRbtnFromTable(tblTest); //Получаем из списка всех радиобаттонов только нажатые List <string> idOfSelectedRBTN = new List <string>(); idOfSelectedRBTN = GetAllSelectedRBTNID(rbtnList); //Получаем цифры из полного ИД List <string> tmpSelectedRbtn = new List <string>(); foreach (string rbtnID in idOfSelectedRBTN) { string rbtn = rbtnID; rbtn = GetNumbersFromString(rbtnID); tmpSelectedRbtn.Add(rbtn); } idOfSelectedRBTN = tmpSelectedRbtn; //Конвертируем айдишник лэйбла List <string> listOfLblID = new List <string>(); foreach (string id in idOfSelectedRBTN) { listOfLblID.Add(ConvertIDToMask(id, "lblAnswer", false)); } //Получаем список из лэйблов(те, что напротив нажатого баттона) List <Label> listLbl = new List <Label>(); foreach (string lblId in listOfLblID) { listLbl.Add((Label)GetControlInTable(tblTest, lblId)); } AnswerDAL aDAL = new AnswerDAL(); //проверяем правильные ли ответы и возвращаем результат int rightAnswers = 0; Color clrRight = new Color(); Color clrWrong = new Color(); clrRight = Color.Green; clrWrong = Color.Red; foreach (Label lbl in listLbl) { if (aDAL.IsRightAnswer(lbl.Text)) { ChangeRowColorTo(tblTest, string.Format("tRow{0}", GetNumbersFromString(lbl.ID)), clrRight); rightAnswers++; } else { ChangeRowColorTo(tblTest, string.Format("tRow{0}", GetNumbersFromString(lbl.ID)), clrWrong); } } TestABC tABC = new TestABC(Session["choosedSubTheme"].ToString()); lblResult.Text = GetResultInString(tABC.QuestionCount, rightAnswers, "Your result is: ") + "%"; double underScoredRes = tABC.QuestionCount / 100.00; double res = rightAnswers / underScoredRes; SubThemeDAL stDAL = new SubThemeDAL(); int idSubTheme = stDAL.GetSubThemeIdBySubThemeNameViaStoredProc(Session["choosedSubTheme"].ToString()); BaseDAL dalABC = new BaseDAL(); MembershipABC memABC = new MembershipABC(); Guid idUser = memABC.GetUserIdByUserName(Membership.GetUser().UserName); tABC.InsertResult(res, idSubTheme, idUser, DateTime.Now); //btnComplete.Visible = false; }