Может кто-нибудь сказать мне мою ошибку?У меня есть две таблицы, объединенные в одну.Их отличает один столбец, называемый источником.(ожидаемый, найденный) Я не хочу удалять все равные строки ... Но в случае удаления обеих строк будет удалена только строка i-1
...
for (int i = 0; i < tbl.Rows.Count; i++)
{
try
{
if (tbl.Rows[i].ItemArray.Contains(Constants.VALUE_SOURCE_FOUND) && tbl.Rows[i - 1].ItemArray.Contains(Constants.VALUE_SOURCE_EXPECTED))
{
var founded = (tbl.Rows[i].ItemArray).ToArray();
var expected = (tbl.Rows[i - 1].ItemArray).ToArray();
for (int u = 0; u < founded.Length; u++)
{
if (founded[u].ToString() == Constants.VALUE_SOURCE_FOUND)
{
founded = founded.Where(w => w != founded[u]).ToArray();
expected = expected.Where(w => w != expected[u]).ToArray();
}
}
if (founded.ToString() == expected.ToString())
{
tbl.Rows[i - 1].Delete();
tbl.AcceptChanges();
tbl.Rows[i].Delete();
tbl.AcceptChanges();
}
}
}
catch { }
}
}
return tbl;