GridView删除数据时索引超出范围的解决方法
2017-01-25 17:28
309 查看
今天用GridView操作数据时,总是提示
索引超出范围。必须为非负值并小于集合大小。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.ArgumentOutOfRangeException: 索引超出范围。必须为非负值并小于集合大小。
参数名: index
上网查了下解决方法,发现网上下面的答到了重点:
try:首先设置一个GridView 一个主键 对应于你数据库表的主键
GridView1.DataSource = myds;
GridView1.DataKeyNames = new string[] { "id" };//主键
GridView1.DataBind();
sqlcon.Close();
然后写SQL语句:select 字段A,字段B where id=‘"+ GridView1.DataKeys[e.RowIndex].Value.ToString() + "‘";
而我的错误原因就是因为我没有设置主键,也就是DataKeyNames。
好大的错误,搞了很长时间才整明白。
索引超出范围。必须为非负值并小于集合大小。
参数名: index
异常详细信息: System.ArgumentOutOfRangeException: 索引超出范围。必须为非负值并小于集合大小。
参数名: index
上网查了下解决方法,发现网上下面的答到了重点:
try:首先设置一个GridView 一个主键 对应于你数据库表的主键
GridView1.DataSource = myds;
GridView1.DataKeyNames = new string[] { "id" };//主键
GridView1.DataBind();
sqlcon.Close();
然后写SQL语句:select 字段A,字段B where id=‘"+ GridView1.DataKeys[e.RowIndex].Value.ToString() + "‘";
而我的错误原因就是因为我没有设置主键,也就是DataKeyNames。
好大的错误,搞了很长时间才整明白。
相关文章推荐
- GridView删除数据时索引超出范围的解决方法
- GridView控件删除记录时出现索引超出范围问题的解决
- GridView控件删除记录时出现索引超出范围问题的解决
- 在用GridView做更新、删除时,出现“索引超出范围。必须为非负值并小于集合大小 ”的原因?
- GridView提交\插入数据\删除信息后字体变大问题的解决方法
- 索引超出范围。必须为非负值并小于集合大小。参数名: index 解决方法
- AsParallel \AsQueryable<T>().ToList() [System.ArgumentOutOfRangeException was unhandled" 索引超出范围。必须为非负值并小于集合大小]解决方法
- GridView提交/插入数据/删除信息后字体变大问题的解决方法
- dataGridView数据绑定及使用方法+索引超出范围
- Excel中有合并单元格时使用ShiftRows方法报“索引超出范围”错误的解决方法
- ASP.net 异常详细信息: System.ArgumentOutOfRangeException: 索引超出范围。必须为非负值并小于集合大小。解决方法
- C#.NET 中使用gridview删除列出现“索引超出范围。必须为非负值并小于集合大小。参数名: index”
- VS2005 SP1发布网站时报"索引超出了数组界限"的解决方法
- TMD,搞了半天,GridView更新时,提示“索引超出范围。必须为非负值并小于集合大小”
- 删除索引主键约束引起ORA-02429错误的解决方法
- View4.X解决无法删除用户数据盘方法
- 解决:索引超出范围。必须为非负值并小于集合大小。
- ORACLE当遇到“数据大小超出此类型的最大值”和“仅可以为插入 LONG 列的 LONG 值赋值”异常时的解决方法
- MYSQL 不允许在子查询的同时删除原表数据的解决方法
- Gridview数据导出excel时身份证号码为科学计数法的解决方法