2018年7月6日 星期五

[C#] 如何刪除DataTable的資料列

使用DataTable.Rows.Remove(DataRow)或DataTable.Rows.RemoveAt(index),直接删除資料列。

使用datatable.Rows[i].Delete()將資料列標記刪除狀態,再以datatable.AccepteChanges()方法完全删除。

public static void Main(string[] args)
{
   DataTable dt = new DataTable();
   dt.Columns.Add("sn", typeof(int));
   dt.Columns.Add("name", typeof(string));
   dt.Rows.Add(1, "John");
   dt.Rows.Add(2, "Tom");
   dt.Rows.Add(3, "Tina");
   dt.Rows.Add(4, "Bob");
   dt.Rows.Add(5, "Mary");
   Show(dt);

   dt.Rows[1].Delete();
   dt.AcceptChanges();
   Show(dt);

   dt.Rows.RemoveAt(1);
   Show(dt);

   dt.Rows.Remove(dt.Rows[1]);
   Show(dt);

   Console.ReadKey();
}

public static void Show(DataTable dt)
{
   Console.WriteLine("sn \t name");
   foreach (DataRow row in dt.Rows)
   {
      Console.WriteLine(row["sn"] + " \t " + row["name"]);
   }
   Console.WriteLine();
}

沒有留言:

張貼留言