DataAdapter.Update()用のDataTableからDataRowsを追加および削除する際に問題が発生します。同時実行エラーが発生し続けますが、どこが間違っているのかわかりません。
DataTableに行を追加および削除すると発生します。
現時点では、次のような行を追加します。
table.Rows.Add(new string{null /*pk*/, "composite_FK1", "composite_FK2", "composite_FK3"});
そして、次のようにDataTableの最後の論理行を削除します。
DataRow[] rows = table.Select(string.Empty, string.Empty, DataViewRowState.CurrentRows);
if (rows.Length > 0)
{
DataRow row = rows[rows.Length - 1];
if (row.RowState == DataRowState.Added)
{
// directly remove this row because it is not in the database yet
table.Rows.Remove(row);
}
else
{
// mark this row for deletion from the database
row.Delete();
}
}
数回の追加と削除の後、更新は同時実行例外で失敗します。行を追加するためのより良い方法は何でしょうか?誰でもエラーを見つけるのを手伝ってくれますか?ありがとう。