日期:2014-05-18  浏览次数:20381 次

DataTable排序,百思不得其解……
DataSet   dsTemp   =   new   DataSet();
DataSet   ds   =   new   DataSet();

dsTemp   =   WebFunction.dataSet(sqlStr);
ds.Merge(dsTemp);
dsTemp   =   WebFunction.dataSet(sqlStr_m);
ds.Merge(dsTemp);
ds.Tables[0].DefaultView.Sort   =   "付款日   ASC ";
dt   =   ds.Tables[0].DefaultView.ToTable();

但排序后的结果差强人意……
为什么10月份的日期会排列在0X月的前边?而0X月之间的顺序却是正确的,为何?请高手指教。
    付款日
2007/10/17
2007/03/19
2007/03/21
…………
2007/09/07

------解决方案--------------------
默认好像都是这样的!!
------解决方案--------------------
试试在sql语句加order by 付款日
------解决方案--------------------
日期是字符串,还是日期类型的值?
两者排序应该不一样。
------解决方案--------------------
应该你的按字符串排序了

要用 DateTime 类型