主頁 > 知識庫 > Datatable刪除行的Delete和Remove方法的區(qū)別介紹

Datatable刪除行的Delete和Remove方法的區(qū)別介紹

熱門標(biāo)簽:山東防封電銷卡辦理套餐 廈門四川外呼系統(tǒng) 泰州手機(jī)外呼系統(tǒng)軟件 杭州智能電話機(jī)器人 內(nèi)蒙古智能電銷機(jī)器人哪家強(qiáng) 地圖標(biāo)注位置多的錢 百度地圖標(biāo)注點擊事件 怎樣在地圖標(biāo)注消火栓圖形 濟(jì)源人工智能電話機(jī)器人價格

1、在C#中,如果要刪除DataTable中的某一行,大約有以下幾種辦法:

•使用DataTable.Rows.Remove(DataRow),或者DataTable.Rows.RemoveAt(index);可以直接刪除行
•datatable.Rows[i].Delete()。Delete()之后需要datatable.AccepteChanges()方法確認(rèn)完全刪除,因為Delete()只是將相應(yīng)列的狀態(tài)標(biāo)志為刪除,還可以通過datatable.RejectChanges()回滾,使該行取消刪除。
•在刪除DataTable中的行的時候,每刪除一行,DataTable中所有行的索引都會發(fā)生改變。在循環(huán)刪除DataTable.Row的時候不能使用foreach。使用foreach進(jìn)行循環(huán)的時候,是不允許Table有刪除和添加操作的。
•如果是按某列為條件進(jìn)行刪除,則每刪完一行,整個Table的index就會立即發(fā)生變化,等于Table已經(jīng)變成了一個新的表。但是索引卻已經(jīng)加1了。于是會造成第一列永遠(yuǎn)匹配不到。因此,每刪除完一行,要跟著判斷第一行是否滿足刪除條件。
•如果要刪除DataTable中的多行,應(yīng)該采用倒序循環(huán)DataTable.Rows。因為正序刪除時索引會發(fā)生變化。程式發(fā)生異常,很難預(yù)料后果。

總結(jié):

delete和remove

•Delete的使用是 datatable.Rows[i].Delete();
•Remove的使用是datatable.Rows.Remove(datatable.Rows[i]);
•這兩個的區(qū)別是,使用delete后,只是該行被標(biāo)記為deleted,但是還存在,用Rows.Count來獲取行數(shù)時,還是刪除之前的行數(shù).需要使用datatable.AcceptChanges()方法來提交修改.
•而Remove方法則是直接刪除.
•如果在for循環(huán)里刪除行的話,最好是使用delete方法,不然會出現(xiàn)count變化的情況.循環(huán)完后再使用AcceptChanges()方法提交修改,刪除掉標(biāo)記為deleted的行

您可能感興趣的文章:
  • JQuery DataTable刪除行后的頁面更新利用Ajax解決
  • C#中DataTable刪除行的方法分析
  • C#在DataTable中根據(jù)條件刪除某一行的實現(xiàn)方法

標(biāo)簽:新鄉(xiāng) 喀什 百色 洛陽 朝陽 朔州 周口 臺州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Datatable刪除行的Delete和Remove方法的區(qū)別介紹》,本文關(guān)鍵詞  Datatable,刪除,行的,Delete,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Datatable刪除行的Delete和Remove方法的區(qū)別介紹》相關(guān)的同類信息!
  • 本頁收集關(guān)于Datatable刪除行的Delete和Remove方法的區(qū)別介紹的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章