您的位置:首页 > 其它

用DataTable.Merge()解决了一个排序问题

2007-03-02 21:24 429 查看
首先明确一点,DataTable不支持排序
在一个DataTable(dt)中已经存在无序数据,要实现排序,我想到了两个方法:

方法一:
可以先构造一个列表(list),按排序顺序存储dt主键列的值; 然后主要是利用DataTable.Merge方法

1 StrongTypedDataTable tempDt;
2 //使tempDt具有dt的Schema 和 Constraint
3 tempDt = new StrongTypedDataTable();
4 foreach(string key in list)
5 {
6 //如果某些列不允许空,则NewRow()->赋key值->再Add(dr).
7 tempDt.Rows.Add(key, null.);
8 }
9 //合并后将维持tempDt中的顺序
tempDt.Merge(dt);
dt = tempDt;
方法二:
思路:DataView支持排序,而DataView对象有方法ToTable,没有尝试过,已经理解ToTable原理或有机会用到的人给个答案吧:)

p.s 猪年第一篇post.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐