我想从DataTable中删除DataRows.要删除的行位于数据列表"wantDelete"中.由于例外,请更正我的代码:
foreach (DataRow dr in myTable.Rows)
{
if (wantDelete.Contains(dr))
myTable.Rows.Remove(dr);
}
Run Code Online (Sandbox Code Playgroud)
例外是:

非常感谢你.
您无法在枚举期间修改集合,因为foreach使用枚举器,而枚举器无法更改基础集合.
所以你应该使用for-loop或者使用deleteItems你已经过滤的另一个集合().
我在你的代码中看到你已经预先过滤了它(我假设wantDelete是List<DataRow>):
foreach (DataRow dr in wantDelete)
{
myTable.Rows.Remove(dr);
}
Run Code Online (Sandbox Code Playgroud)
旁注:你知道DataTable如果你使用的话,从a 中删除行不会删除它们DataAdapter吗?因此你需要使用DataRow.Delete().