.net数据集如何获取已删除的子行

时间:2010-12-27 19:25:29

标签: .net winforms strongly-typed-dataset datarelation

我有一个强类型数据集(VB.NET),使用.NET Framework 2.0。如果父DataRowDataTable中有DataRelation,我需要找到子DataTableRowState = {{1}的所有相关行}}

对我来说不幸的是,DataRowState.Deleted不包含DataRow.GetChildRows(DataRelation) RowState的子行。

目前我正在对子表进行表扫描,以查找与关系条件匹配的已删除行,但是我的表已经变得太大而无法工作。如何才能获得具有良好性能的已删除子行?

2 个答案:

答案 0 :(得分:2)

您可以使用DataSet.GetChanges并传递DataRowState.Deleted参数。它应该返回一个DataSet,其中包含标记为已删除的所有行。

答案 1 :(得分:1)

使用GetChildRows(relation, DataRowVersion.Original)解决了这个问题。然后,遍历这些行并使用RowState = DataRowState.Deleted抓取那些。