У меня проблема с отказом DataSet с самосогласованными таблицами.RejectChanges Самоотношения в DataSet
Сначала я вставляю родительскую строку и дочернюю строку в таблицу. Затем я вызываю метод RejectChanges из объекта таблицы или того же метода из DataSet. Метод RejectChagnes вызывает исключение RowNotInTableException.
Это код, чтобы demostrate это (TestRejectChanges.zip):
DataSet dataSet = new DataSet();
//Parent row
DataSet.TABLERow parentRowOverDataSet = dataSet.TABLE.AddTABLERow(1, "Parent", null);
//Child row
dataSet.TABLE.AddTABLERow(2, "Child", parentRowOverDataSet);
//This line crash because the child row is detached before Rolback (in RejectChanges method code)
dataSet.TABLE.RejectChanges();
//Also crash
//foreach (DataSet.TABLERow row in dataSet.TABLE.ToList())
//{
// row.RejectChanges();
//}
//Also crash
//dataSet.RejectChanges();
я судимый переопределить RejectChanges из DataTable, но этот метод не является виртуальным. Есть ли способ сделать это, используя RejectChanges DataSet?