说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.ArgumentOutOfRangeException: 索引超出范围。必须为非负值并小于集合大小。
参数名: index
分析: 1.gridview的datasource是否重新做了绑定 2.是否设定了datakeynames属性
源错误:
行 50: mycmd.CommandType = CommandType.StoredProcedure;行 51: SqlParameter para_id = new SqlParameter("@id", SqlDbType.Int);行 52: para_id.Value = (int)gv_result.DataKeys[e.RowIndex].Value;行 53: mycmd.Parameters.Add(para_id);行 54: mycmd.ExecuteNonQuery();
昨天我在用gridview做数据删除时遇到这样一个问题,一直出现索引超出范围。必须为非负值并小于集合大小。参数名: index 的错误,郁闷了一阵子,后来才知道需要给Grewview绑定一个主键,也就是在Grewview属性中加入DataKeyNames="主键字段名",
(也可在绑定数据的时候加入,
gv_result.DataSource = mydr;
gv_result.DataKeyNames = new string[] { "mem_id"} ;
gv_result.DataBind) <
异常详细信息: System.ArgumentOutOfRangeException: 索引超出范围。必须为非负值并小于集合大小。
参数名: index
分析: 1.gridview的datasource是否重新做了绑定 2.是否设定了datakeynames属性
源错误:
行 50: mycmd.CommandType = CommandType.StoredProcedure;行 51: SqlParameter para_id = new SqlParameter("@id", SqlDbType.Int);行 52: para_id.Value = (int)gv_result.DataKeys[e.RowIndex].Value;行 53: mycmd.Parameters.Add(para_id);行 54: mycmd.ExecuteNonQuery();
昨天我在用gridview做数据删除时遇到这样一个问题,一直出现索引超出范围。必须为非负值并小于集合大小。参数名: index 的错误,郁闷了一阵子,后来才知道需要给Grewview绑定一个主键,也就是在Grewview属性中加入DataKeyNames="主键字段名",
(也可在绑定数据的时候加入,
gv_result.DataSource = mydr;
gv_result.DataKeyNames = new string[] { "mem_id"} ;
gv_result.DataBind) <