首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

GridView更新出错,该如何解决

2012-04-05 
GridView更新出错再使用GridView更新操作在st_comm.Parameters[ @Student_home ].Valuest_st_colvalue

GridView更新出错
再使用GridView更新操作在   st_comm.Parameters[ "@Student_home "].Value   =   st_st_colvalue;时出错提示st_comm.Parameters[ "@Student_home "].Value   :   “st_comm.Parameters[ "@Student_home "]”引发“System.IndexOutOfRangeException”类型的异常,请帮帮忙谢谢
代码:
//更新
                protected   void   GridView1_RowUpdating(object   sender,   GridViewUpdateEventArgs   e)
                {
                        GridViewRow   gvr=this.GridView1.Rows[e.RowIndex];
                        //创建命令字符
                        SqlCommand   st_comm   =   new   SqlCommand( "update_student_1 ",st_conn);
                        //指定为调用存储过程  
                        st_comm.CommandType   =   CommandType.StoredProcedure;

                        try
                        {      
                                //添加数据参数
                                st_comm.Parameters.Add(new   SqlParameter( "@Student_name ",   SqlDbType.VarChar,50));
                                st_comm.Parameters.Add(new   SqlParameter( "@Student_sex ",   SqlDbType.Char,   10));
                                st_comm.Parameters.Add(new   SqlParameter( "@Student_nation ",SqlDbType.Char,10));
                                st_comm.Parameters.Add(new   SqlParameter( "@Student_birthday ",   SqlDbType.DateTime,   8));
                                st_comm.Parameters.Add(new   SqlParameter( "@Student_time ",   SqlDbType.DateTime,   8));
                                st_comm.Parameters.Add(new   SqlParameter( "@Student_classid ",   SqlDbType.VarChar,   50));
                                st_comm.Parameters.Add(new   SqlParameter( "Student_home ",   SqlDbType.VarChar,   50));
                                st_comm.Parameters.Add(new   SqlParameter( "Student_else ",   SqlDbType.VarChar,   50));
                                st_comm.Parameters.Add(new   SqlParameter( "Student_id ",   SqlDbType.BigInt,   8));
                                string   st_st_colvalue   =   ((TextBox)gvr.Cells[1].Controls[0]).Text;


                                st_comm.Parameters[ "@Student_name "].Value   =   st_st_colvalue;
                                st_st_colvalue   =   ((TextBox)gvr.Cells[2].Controls[0]).Text;
                                st_comm.Parameters[ "@Student_sex "].Value   =   st_st_colvalue;
                                st_st_colvalue   =   ((TextBox)gvr.Cells[3].Controls[0]).Text;
                                st_comm.Parameters[ "@Student_nation "].Value   =   st_st_colvalue;
                                st_st_colvalue   =   ((TextBox)gvr.Cells[4].Controls[0]).Text;
                                st_comm.Parameters[ "@Student_birthday "].Value   =   st_st_colvalue;
                                st_st_colvalue   =   ((TextBox)gvr.Cells[5].Controls[0]).Text;
                                st_comm.Parameters[ "@Student_time "].Value   =   st_st_colvalue;
                                st_st_colvalue   =   ((TextBox)gvr.Cells[6].Controls[0]).Text;
                                st_comm.Parameters[ "@Student_classid "].Value   =   st_st_colvalue;
                                st_st_colvalue   =   ((TextBox)gvr.Cells[7].Controls[0]).Text;
                                st_comm.Parameters[ "@Student_home "].Value   =   st_st_colvalue;
                                st_st_colvalue   =   ((TextBox)gvr.Cells[8].Controls[0]).Text;
                                st_comm.Parameters[ "@Student_else "].Value   =   st_st_colvalue;
                                st_comm.Parameters[ "@Student_id "].Value   =   GridView1.DataKeys[e.RowIndex].Value;
                                //打开数据库连接
                                st_comm.Connection.Open();
                                //执行
                                st_comm.ExecuteNonQuery();
                                st_lbl_note.Text   =   "编辑成功 ";


                                GridView1.EditIndex   =   -1;
                        }
                        catch
                        {
                                //当更新不成功时将返回如下信息给页面
                                st_lbl_note.Text   =   "编辑失败,请重新输入 ";
                                st_lbl_note.Style[ "color "]   =   "red ";
                        }
                        st_comm.Connection.Close();
                        ST_BindGrid();
                }

[解决办法]
呵,你上面用的st_comm.Parameters.Add(new SqlParameter( "Student_home ", SqlDbType.VarChar, 50));

下面又用@Student_home没有找到
[解决办法]
st_comm.Parameters.Add(new SqlParameter( "Student_home ", SqlDbType.VarChar, 50));
-->
st_comm.Parameters.Add(new SqlParameter( "@Student_home ", SqlDbType.VarChar, 50));

热点排行