如何从datatable中删除行_考虑我的数据表中有12行,我需要使用特定的行值删除其中一行..
数据表:
Field Name | Field Type
------------------------
FirstName | Text box
|
LastName | Text box
我需要从表本身中删除选定的行 使用下面的代码片段,我可以检索FirstName
string value = (string)selectedRows[i].Cells[0].Value;
Console.WriteLine(outdex);
但是如何从数据表中删除它
有人可以帮帮我吗?
答案 0 :(得分:2)
从OP其他问题,他希望从DataGridView
获取选定的行,并从临时DataTable
中删除此行。
//Get the row that is selected
DataGridViewRow dr = selectedRows.Cast<DataGridViewRow>().FirstOrDefault();
//Your temp DataTable
DataTable dtTemp = new DataTable();
//If there is a row selected
if (dr != null)
{
var rowToRemove = dtTemp.Rows.Cast<DataRow>().FirstOrDefault(row => row[0] == dr.Cells[0].Value);
if (rowToRemove != null)
dtTemp.Rows.Remove(rowToRemove);
}
答案 1 :(得分:1)
你走了:
dt.Rows.Cast<DataRow>()
.Where(r => r.ItemArray[0] == "Any_Value")
.ToList()
.ForEach(r => r.Delete());
OR
DataView view = new DataView(dt);
view.RowFilter = "Column_name = 10";
foreach (DataRowView row in view)
{
row.Delete();
}
答案 2 :(得分:1)
尝试使用以下代码
var rows = dataTable.Select("condition to select");
rows.ForEach((r) => r.Delete(););
dataTable.AcceptChanges();
答案 3 :(得分:0)
if (value == "some deleteValue")
selectedRows[i].Delete();
如果在循环中这样做,你会想要更像这样的答案: Deleting specific rows from DataTable