堆栈跟踪:
[FormatException: 输入字符串的格式不正确。]
   System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal) +7472119
   System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info) +119
   System.Int32.Parse(String s) +23
   ST_CoursefAdd.btnOK_Click(Object sender, EventArgs e) in d:\样品\学院系统备份\ST_WebCourse\ST_Teacher\ST_CoursefAdd.aspx.cs:159
   System.Web.UI.WebControls.Button.OnClick(EventArgs e) +111
   System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +110
   System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1565小弟初学者,水平有限,也看不懂堆栈跟踪,求大哥大姐们指点,不胜感激!!

解决方案 »

  1.   

     ST_CoursefAdd.btnOK_Click(Object sender, EventArgs e) in d:\样品\学院系统备份\ST_WebCourse\ST_Teacher\ST_CoursefAdd.aspx.cs:159
    195行啊 btnOK_Click 方法。 ST_CoursefAdd.aspx页面。。
      

  2.   

    你应该断点找到出错的那行,然后贴下代码看看,应该是字符串转换成数字出错

    int temp=int.Parse(this.textBox1.Text);修改如下int temp = 0;
                int.TryParse(this.textBox1.Text,out temp);
      

  3.   

    st_course.ST_UpdatelCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text, int.Parse(txtNumber.Text));
    这是出错的那行,可我不知道怎么错了
      

  4.   

            Regex reg=new Regex(@"^\d+$");
                int ddlSource = 0;
                if(reg.IsMatch(ddlSource.SelectedValue)){
                    ddlSource = int.Parse(ddlSource.SelectedValue);
                }
                xxx...
                st_course.ST_UpdatelCourseInfo(ddlSource,xxx...);每个ddl都像我这样判段下就行了
      

  5.   

    protected void btnOK_Click(object sender, System.EventArgs e)
    {
    //判断条件,名称不允许未空,名称长度不超过20个字符
    if(txtName.Text=="")
    Response.Write("<script defer>alert('名称不允许未空');</script>");
    else if(txtName.Text.Length>20)
    {
    Response.Write("<script defer>alert('最多20个字符');</script>");
    }
    else
    {
    ST_CourseM st_course = new ST_CourseM();
    ST_TeacherM st_teacher = new ST_TeacherM();
      

  6.   

    if(Request["Action"]=="add")//添加课程
    {
                    st_course.ST_InsertlCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text);
                    if (int.Parse(ddlDept.SelectedValue) == 1)
                        st_course.ST_InsertxzCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text);
                    else if (int.Parse(ddlDept.SelectedValue) == 2)
                        st_course.ST_InsertjcCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text);
                    else if (int.Parse(ddlDept.SelectedValue) == 3)
                        st_course.ST_InsertlxCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text);
                    else if (int.Parse(ddlDept.SelectedValue) == 4)
                        st_course.ST_InsertyyCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text);
                    else if (int.Parse(ddlDept.SelectedValue) == 5)
                        st_course.ST_InsertfxCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text);
                    else if (int.Parse(ddlDept.SelectedValue) == 6)
                        st_course.ST_InsertxdCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text);
                    else if (int.Parse(ddlDept.SelectedValue) == 7)
                        st_course.ST_InsertdlCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text);
                    else if (int.Parse(ddlDept.SelectedValue) == 8)
                        st_course.ST_InsertjsCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text);
                    else if (int.Parse(ddlDept.SelectedValue) == 9)
                        st_course.ST_InserthkCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text);
                    else if (int.Parse(ddlDept.SelectedValue) == 10)
                        st_course.ST_InsertfhCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text);
                    else
                        st_course.ST_InsertwdCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text); 
    }
      

  7.   

    else//更新课程
    {
                    st_course.ST_UpdatelCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text, int.Parse(txtNumber.Text));
                    st_course.ST_UpdatexzCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text, int.Parse(txtNumber.Text));
                    st_course.ST_UpdatejcCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text, int.Parse(txtNumber.Text));
                    st_course.ST_UpdatelxCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text, int.Parse(txtNumber.Text));
                    st_course.ST_UpdateyyCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text, int.Parse(txtNumber.Text));
                    st_course.ST_UpdatefxCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text, int.Parse(txtNumber.Text));
                    st_course.ST_UpdatexdCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text, int.Parse(txtNumber.Text));
                    st_course.ST_UpdatedlCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text, int.Parse(txtNumber.Text));
                    st_course.ST_UpdatejsCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text, int.Parse(txtNumber.Text));
                    st_course.ST_UpdatehkCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text, int.Parse(txtNumber.Text));
                    st_course.ST_UpdatefhCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text, int.Parse(txtNumber.Text));
                    st_course.ST_UpdatewdCourseInfo(txtName.Text.Trim(), int.Parse(ddlStyle.SelectedValue), int.Parse(ddlSource.SelectedValue), int.Parse(ddlNature.SelectedValue), int.Parse(ddlFundingSource.SelectedValue), int.Parse(ddlLocation.SelectedValue), int.Parse(ddlTeacher.SelectedValue), int.Parse(ddlJob.SelectedValue), txtOutSchoolName.Text, txtOutSchoolJob.Text, int.Parse(ddlMajor.SelectedValue), int.Parse(ddlDept.SelectedValue), txtStudentCode.Text, txtStudentName.Text, txtStudentScore.Text, int.Parse(txtNumber.Text));
    } string str = "<script language=javascript>window.dialogArguments.document.location.href='ST_Course.aspx';window.close();</script>"; 
    Response.Write(str);
    }
    }
      

  8.   

    大概是 dropdownlist 绑定的value里有非数字 转换的时候出错。设个断点监听下
      

  9.   

    苦恼啊,解决不了。。确定所有的ddl都取到值了,是数字,但就是报错。。诶。。
      

  10.   

    主要是您老人家这代码跟min版的JQuery似的,实在提不起看代码的兴趣。
      

  11.   

    主要是您老人家这代码跟min版的JQuery似的,实在提不起看代码的兴趣。
      

  12.   

      
    在你的页面同一目录新建一个类  把这代码扔进去
    public static class Extends
        {        public static int ToInt(this object o)
            {
                int reval = 0;
                if (o != null && int.TryParse(o.ToString(), out reval))
                {
                    return reval;
                }
                return 0;
            }
        }然后改你的代码如下
     int.Parse(ddlStyle.SelectedValue),
     int.Parse(ddlSource.SelectedValue),
     int.Parse(ddlNature.SelectedValue), 
     int.Parse(ddlFundingSource.SelectedValue), 
     把上面代码换成
    ddlStyle.SelectedValue.ToInt()写法
    ddlSource.SelectedValue.ToInt()
      

  13.   

    在你的页面同一目录新建一个类把下面代码直接复制进去
    public static class Extends
    {    public static int ToInt(this object o)
        {
            int reval = 0;
            if (o != null && int.TryParse(o.ToString(), out reval))
            {
                return reval;
            }
            return 0;
        }
    }
    然后
    int.Parse(ddlStyle.SelectedValue)
    全部换成
    ddlStyle.SelectedValue.ToInt()