我正在从事 C# 学习过程,到目前为止进展顺利。然而,我刚刚击中了我的第一个“说什么?” 片刻。
DataTable 提供对其 Rows 集合的随机行访问,不仅通过典型的集合行为,还通过 DataTable.Select。但是,我似乎无法将此功能与 DataRow.Delete 联系起来。到目前为止,这似乎是我需要做的,以便有条件地从表中删除一行或多行。
int max = someDataTable.Rows.Count - 1;
for(int i = max; i >= 0; --i)
{
if((int)someDataTable.Rows[i].ItemArray[0] == someValue)
{
someDataTable.Rows[i].BeginEdit();
someDataTable.Rows[i].Delete();
}
else
break;
}
someDataTable.AcceptChanges();
但我对这段代码不满意。我也不相信。我肯定错过了什么。如果我需要有条件地删除一行或多行,我真的被迫按顺序点击 Rows 集合吗?
(不要介意倒置。我从数据表的末尾删除。所以没关系)