新闻动态
新闻动态
- access三表连接 实用
- 除了seo我们还有很多东西要学习-转载
- 导致网站降权的六种错误分析
- 什么是PV值?
- 【中间件】AutoFac 理解和使用
- 小程序开发
- 分享内链比外链重要很多
- 行业网站怎样确定关键词
- 电商运营之怎么提高淘宝直通车的质量分?
- c#导入excel时错误提示: 找不到可安装的ISAM
联系我们
邮箱:
手机:15383239821
asp.net
在c#中 RemoveAt、 Remove、delete用法区别
作者:
发布时间:2011-03-15
点击:
删除DataRow:有两种方法可以删除DataRow,分别是Delete方法和Remove方法和RemoveAt方法。
其区别是:
Delete方法实际上不是从DataTable中删除掉一行,而是将其标志为删除,仅仅是做个记号,
而Remove方法则是真正的从DataRow中删除一行,
RemoveAt方法是根本行的索引来删除。
列:DataRow dr=ds.Tables[table].Rows.Find(a);ds.Tables[table].Remove(dr);或ds.Tables[table].Remove(index);//dr 为a所在的行,查出后将其删除,index为 a所在的索引号。
有两种方法可以删除DataTable中的DataRow:
Delete方法和Remove方法和RemoveAt方法,其区别是:
Delete方法实际上不是从DataTable中删除掉一行,而是将其标志为删除,仅仅是做个记号,而Remove方法则是真正的从DataRow中删除一行,RemoveAt方法是根据行的索引来删除。
使用方法:
DataRow dr=ds.Tables["table"].Rows.Find("a");
ds.Tables["table"].Remove(dr);
或
ds.Tables["table"].RemoveAt(index);
或
ds.Tables["table"].Row[index].Delete();
Question:
今天在实现一个循环删除的功能的时候,用RemoveAt方法来实现,结果出现找不到第X行的错误提示。可见RemoveAt执行以后已经提交,就是如果原来表中有两条记录,那么执行一次RemoveAt(0)之后就只剩下一条记录了,再执行RemoveAt(1)就会报错(其实这个时候还应该执行RemoveAt(0))。所以循环删除的时候最好用Delete方法,这样先做删除标记,然后用table.AcceptChanges()方法统一提交。
Delete方法和Remove方法和RemoveAt方法,其区别是:
Delete方法实际上不是从DataTable中删除掉一行,而是将其标志为删除,仅仅是做个记号,而Remove方法则是真正的从DataRow中删除一行,RemoveAt方法是根据行的索引来删除。
使用方法:
DataRow dr=ds.Tables["table"].Rows.Find("a");
ds.Tables["table"].Remove(dr);
或
ds.Tables["table"].RemoveAt(index);
或
ds.Tables["table"].Row[index].Delete();
Question:
今天在实现一个循环删除的功能的时候,用RemoveAt方法来实现,结果出现找不到第X行的错误提示。可见RemoveAt执行以后已经提交,就是如果原来表中有两条记录,那么执行一次RemoveAt(0)之后就只剩下一条记录了,再执行RemoveAt(1)就会报错(其实这个时候还应该执行RemoveAt(0))。所以循环删除的时候最好用Delete方法,这样先做删除标记,然后用table.AcceptChanges()方法统一提交。
两者是有区别的.
1. 使用myDataTable.Rows.RemoveAt(i)删除行.
2. 使用myDataTable.Rows(i).delete
这时候需要使用
myDataTable.AcceptChanges
才能更新到数据库.
-------------------------------
两种方法看似第一种比较简单.但不要在循环里使用myDataTable.Rows.RemoveAt(i).因为每删除一行后.i的值会增加,但行数会是减少了.这么做一定会出错.
- 上一篇:append的用法
- 下一篇:DataSet用法(网络摘录)
新闻资讯
-
2013-04-24.net 显示日期如何按想要的格式显示?
-
2013-08-28ASP.NET2.0-防止同一用户同时登陆
-
2023-11-20MySQL Dump
-
2013-08-22手机网页的制作方法七_WML表单内容
-
2023-04-24Thinkphp6 中.htaccess文件设置伪静态
-
2023-09-13新网站的收录与索引
相关案例
