DataView排序 疑惑

DataRow[] flight  =  ds.Tables[ " flight " ].Select( "  1=1  " , " cheappestprice asc " );
            flight.Sort 
=   " cheappestprice asc " ;

以上排序在使用时出现错误

如上面结果中包含id 字段,cheappestprice字段 ,按cheappestprice升序 取出最小值得记录。解决的方法:

DataRow[] flight  =  ds.Tables[ " flight " ].Select( "  1=1  " " cheappestprice asc " );
id 
=  flight[ 0 ][ " id " ].ToString();

 

 也就是使用DataTable排序

DataView构造函数[MSDN]

由于在创建 DataView 时以及在修改任何 SortRowFilterRowStateFilter 属性时都会生成 DataView 的索引,所以当创建 DataView 时,通过以构造函数参数的形式提供任何初始排序顺序或筛选条件,可以实现最佳性能。 如果在不指定排序或筛选条件的情况下创建 DataView,然后设置 SortRowFilterRowStateFilter 属性,这会使索引至少生成二次: 一次是在创建 DataView 时,另一次是在修改任何排序或筛选属性时。

你可能感兴趣的:(view)