Datatable dt = dataSet.Table[0];
DataView dv = new DataView(dt);dv.RowFilter = "key1 = 1";
dv.RowStateFilter = DataViewRowState.ModifiedCurrent;
DataView dv = new DataView(dt);dv.RowFilter = "key1 = 1";
dv.RowStateFilter = DataViewRowState.ModifiedCurrent;
dv.Sort = "key2 DESC";
然后通过遍例自己处理重复的数据
' Sort descending by CompanyName column.
strSort = "name DESC"
' Use the Select method to find all rows matching the filter.
Dim foundRows As DataRow() = _
customerTable.Select( strExpr, strSort, DataViewRowState.Added )
private static DataTable GetDataTableByFilter( DataTable sourceDataTable )
{
DataTable filteredTable = new DataTable( "Filtered" );
// Add columns
filteredTable.Columns.Add( "Key1", typeof(string) );
filteredTable.Columns.Add( "Key2", typeof(string) );
filteredTable.Columns.Add( "Value", typeof(string) ); // Set PrimaryKey
filteredTable.Columns[ "Key2" ].Unique = true;
filteredTable.PrimaryKey = new DataColumn[] { filteredTable.Columns["Key2"] }; string strExpr;
string strSort;
strExpr = "Key1 = 1";
// Sort descending by one column named.
strSort = "Key2 DESC";
// Use the Select method to find all rows matching the filter.
filteredDataTable.Rows =
sourceDataTable.Select( strExpr, strSort, DataViewRowState.Added );
return filteredDataTable;
}
然后dv.RowFilter = "Key1 = 1";
dv.Sort = "Key2";