我有一个数据集,我在上面设置了一个rowFilter:
DateTime minDateVal = (DateTime)ds.Tables[0].Compute("Min(DateTimeField)", "anotherField = 12");
ds.Tables[0].DefaultView.RowFilter = "anotherField=12 and DateTimeField='" + minDateVal + "'";
因此,在应用此过滤器后,我得到满足条件的行,但是如何访问过滤的行(满足RowFilter条件的行(?
一些疑问:
获得满足RowFilter的行数的数量是正确的吗?
ds.defaultview.count
ds.defaultview.recordcount
应用RowFilter后访问已过滤的行是正确的吗?
第0行:
ds.DefaultView.RowViewCache[0]["MyColumn1"].ToString()
第1行:
ds.DefaultView.RowViewCache[1]["MyColumn1"].ToString()
等等。
您可以使用DataView的ToTable()
将DataView返回到DataTable
DataView dv = ds.Tables[0].DefaultView;
dv.RowFilter = "anotherField=12 and DateTimeField='" + minDateVal + "'";
Datatable result = dv.ToTable();