异常详细信息: System.ArgumentOutOfRangeException: 长度不能小于 0。参数名: length
“/test”应用程序中的服务器错误。
--------------------------------------------------------------------------------
长度不能小于 0。参数名: length
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.ArgumentOutOfRangeException: 长度不能小于 0。参数名: length
源错误:
执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。
堆栈跟踪:
[ArgumentOutOfRangeException: 长度不能小于 0。
参数名: length]
System.String.Substring(Int32 startIndex, Int32 length) +172
System.String.Substring(Int32 startIndex) +11
System.Web.UI.WebControls.CheckBoxList.System.Web.UI.IPostBackDataHandler.LoadPostData(String postDataKey, NameValueCollection postCollection)
System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
System.Web.UI.Page.ProcessRequestMain()
版本信息: Microsoft .NET Framework 版本:1.1.4322.573; ASP.NET 版本:1.1.4322.573
代码:
private void Page_Load(object sender, System.EventArgs e)
{
//判断是否已登录
if(Session["stuNo"]==null|| Session["stuNo"].ToString()=="")
{
Response.Redirect("default.aspx");
}
//取得Session中传入的参数
lblLesson.Text=Session["lesson"].ToString();
lblName.Text=Session["stuName"].ToString();
lblNo.Text=Session["stuNo"].ToString();
//下面根据题库生成试卷界面
//产生5个不同的随机数
int i,j,s;
i=1;
s=0;
while(i<6)
{
bool t;
t=true;
Random rand=new Random();
s=rand.Next(1,8);
for(j=1;j<6;j++)
{
if(s==array[j])
{
t=false;
break;
}
}
if(t)
{
array[i]=s;
i++;
}
}
//根据随机数取试题
for(i=1;i<=5;i++)
{
OleDbDataReader dr=DBHelper.GetReader("select * from 题库 where 课程名='"+lblLesson.Text+"'and 题号="+array[i]+"");
int num=1; //num--试题序号
while(dr.Read())
{
//加入题目
Literal Literal1=new Literal();
Literal1.Text=i.ToString()+"."+dr["题目"].ToString()+"("+dr["分数"].ToString()+"分)<br>";
PlaceHolder1.Controls.Add( Literal1 );
//根据题型(单选、复选)决定使用RadioButtonList还是CheckBoxList
ListControl list;
if (dr["类型"].ToString()=="单选")
{
list=new RadioButtonList();
}
else //复选
{
list=new CheckBoxList();
}
//加入选项内容
list.Items.Add( Server.HtmlEncode( dr["选项1"].ToString()) ) ;
list.Items.Add( Server.HtmlEncode( dr["选项2"].ToString()) ) ;
list.Items.Add( Server.HtmlEncode( dr["选项3"].ToString()) ) ;
list.Items.Add( Server.HtmlEncode( dr["选项4"].ToString()) ) ;
PlaceHolder1.Controls.Add( list);
num=num+1;
}
dr.Close();
}
}
每当我点击提交试卷的时候,,就会出错,不知道哪出错了,,在线等待..