执行以下语句报错:
foreach (DataRow dr in dt.rows)
{
dt.Rows.Remove(dr);
}
1.出现这个问题的原因是,使用 foreach 进行循环遍历导致集合发生改变,因此第一次循环结束,再一次循环时报错:集合已修改巴拉巴拉,,,
2.使用 for 循环代替 foreach ,完美解决问题
for (int r = dt.Rows.Count - 1; r >= 0; r--)
{
dt.Rows.Remove(dt.Rows[r]);
}