DataTable.GetChanges() 是否可以通过引用获取行?
DataTable.GetChanges() is it possible to get rows by reference?
Dim dtModifiedData As DataTable = dtMain.GetChanges(DataRowState.Modified)
正如函数的定义所说,它确实在从主 table.
过滤后复制行
是否可以通过引用获取它们?
是:
Dim modifiedRows = From row In dtMain.AsEnumerable()
Where row.RowState = DataRowState.Modified
如果您在 DataTable
中需要它,那是不可能的,因为 DataRow
总是属于一个 DataTable
。如果您尝试将它从一个移动到另一个,您将得到一个例外。您需要一个像 ImportRow
这样的方法,它使用源行中的值创建一个新的 DataRow
。出于同样的原因 CopyToDataTable
在上面的 LINQ 查询中也会创建新的 DataRows
.
Dim dtModifiedData As DataTable = dtMain.GetChanges(DataRowState.Modified)
正如函数的定义所说,它确实在从主 table.
过滤后复制行是否可以通过引用获取它们?
是:
Dim modifiedRows = From row In dtMain.AsEnumerable()
Where row.RowState = DataRowState.Modified
如果您在 DataTable
中需要它,那是不可能的,因为 DataRow
总是属于一个 DataTable
。如果您尝试将它从一个移动到另一个,您将得到一个例外。您需要一个像 ImportRow
这样的方法,它使用源行中的值创建一个新的 DataRow
。出于同样的原因 CopyToDataTable
在上面的 LINQ 查询中也会创建新的 DataRows
.