首页上一页 1 下一页尾页 1 条记录 1/1页
ASP.NET开发典型模块大全中在线考试系统的BUG问题
发表在ASP.NET图书答疑
2012-03-02
是否精华
是
否
版块置顶:
是
否
老师您好!
在测试该考试系统的过程中,发现了一个BUG。就是用户登录后,在UserTest.aspx页面中如果学生对[font color=#0000FF]判断题[/font]的选择如果[font color=#00FF00]留空[/font]的话,那么UserTest.aspx.cs中
string str = "";
CheckBox cbox5 = (CheckBox)dr.FindControl("CheckBox5");//正确
CheckBox cbox6 = (CheckBox)dr.FindControl("CheckBox6");//错误
if (cbox5.Checked)
{
str = Convert.ToString(true);
}
if (cbox6.Checked)
{
str = Convert.ToString(false);
}
int titleid = int.Parse(((Label)dr.FindControl("Label42")).Text);
string Judge = "insert into UserAnswermr(UserID,PaperID,Type,TitleID,Mark,[font color=#FF0000]UserAnswer[/font],ExamTime) values('" + labUser.Text + "','" + paperid + "','判断题','" + titleid + "','" + judgemark + "','" + str + "','" + DateTime.Now.ToString() + "')";
存入数据库表单UserAnswermr中的UserAnswer字段是null的,于是乎在另一个页面UserPaper.aspx.cs中使用下面的语句是无法显示出之前学生选择的判断题答案,系统直接报错的。
protected void PaperData()
{
。。。。
if (GridView3.Rows.Count > 0)
{
if (bool.Parse(((Label)dr.FindControl("Label11")).Text.Trim()))
//((Label)dr.FindControl("Label11")).Text.Trim()为上面的UserAnswer值
//UserAnswer值为空时,没办法转换成bool类型,系统报错——[font color=#FF0000]该字符串未被识别为有效的布尔值。[/font]
{
((CheckBox)dr.FindControl("CheckBox5")).Checked = true;
}
else
{
((CheckBox)dr.FindControl("CheckBox6")).Checked = true;
}
}
}
请问老师这个问题该如何解决呢?
在测试该考试系统的过程中,发现了一个BUG。就是用户登录后,在UserTest.aspx页面中如果学生对[font color=#0000FF]判断题[/font]的选择如果[font color=#00FF00]留空[/font]的话,那么UserTest.aspx.cs中
string str = "";
CheckBox cbox5 = (CheckBox)dr.FindControl("CheckBox5");//正确
CheckBox cbox6 = (CheckBox)dr.FindControl("CheckBox6");//错误
if (cbox5.Checked)
{
str = Convert.ToString(true);
}
if (cbox6.Checked)
{
str = Convert.ToString(false);
}
int titleid = int.Parse(((Label)dr.FindControl("Label42")).Text);
string Judge = "insert into UserAnswermr(UserID,PaperID,Type,TitleID,Mark,[font color=#FF0000]UserAnswer[/font],ExamTime) values('" + labUser.Text + "','" + paperid + "','判断题','" + titleid + "','" + judgemark + "','" + str + "','" + DateTime.Now.ToString() + "')";
存入数据库表单UserAnswermr中的UserAnswer字段是null的,于是乎在另一个页面UserPaper.aspx.cs中使用下面的语句是无法显示出之前学生选择的判断题答案,系统直接报错的。
protected void PaperData()
{
。。。。
if (GridView3.Rows.Count > 0)
{
if (bool.Parse(((Label)dr.FindControl("Label11")).Text.Trim()))
//((Label)dr.FindControl("Label11")).Text.Trim()为上面的UserAnswer值
//UserAnswer值为空时,没办法转换成bool类型,系统报错——[font color=#FF0000]该字符串未被识别为有效的布尔值。[/font]
{
((CheckBox)dr.FindControl("CheckBox5")).Checked = true;
}
else
{
((CheckBox)dr.FindControl("CheckBox6")).Checked = true;
}
}
}
请问老师这个问题该如何解决呢?