我在使用自相关表拒绝DataSet时遇到问题。
首先,我在表格中插入父行和子行。然后我从表对象或DataSet中的相同方法调用RejectChanges方法。 RejectChagnes方法抛出RowNotInTableException。
这是解释此问题的代码(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();
我试图覆盖DataTable的RejectChanges,但这种方法不是虚拟的。有没有办法使用DataSet的RejectChanges来做到这一点?
答案 0 :(得分:0)
我打开了一个MS Solve Case(使用MSDN Lisence),经过一个月的等待他们的回复后,他们给我写了下一个:
我做了一些研究,并与我们的一名团队成员讨论过 PG和这似乎是一个设计问题,截至目前。
我完成了您的问题排查和建议:
非常感谢您对此问题的反馈。在这个时间点,我 我要提交DCR(设计变更请求)以查看是否可以 在即将发布的版本中考虑此功能。
那时它暂时没有解决方案。