C#按每个表中的公共列对DataTableCollection进行排序

本文关键字:DataTableCollection 排序 | 更新日期: 2023-09-27 17:58:06

我在弄清楚如何对DataTableCollection排序时遇到了一些问题。场景是,集合中的每个表都有相同的架构,并有一个名为"JobNumber"的列,我想对其进行排序。这些表中的数据需要按照该顺序进行处理。

有什么建议吗?

C#按每个表中的公共列对DataTableCollection进行排序

DataTableCollection col;
  foreach(DataTable tbl in col)
  {
    // Get the DefaultViewManager of a DataTable and sort it.
    DataTable1.DefaultView.Sort = "JobNumber";
  }

http://msdn.microsoft.com/en-us/library/system.data.dataview.sort.aspx

遍历集合中的表很容易,但对于每个表的排序,您可能希望看到:http://msdn.microsoft.com/en-us/library/zk13kdh0(v=vs.71).aspx

我会使用SortedList用所有DataTables中的行填充它,如果你的JobNumer是唯一的,比如:

public SortedList<int, DataRow> SortDataTableCollection(DataTableCollection col)
{
  SortedList<int, DataRow> result = new SortedList<int, DataRow>();
  foreach(DataTable tbl in col)
  {
    foreach(DataRow rw in tbl.Rows)
    {
      result.Add((int)rw["JobNumber"], rw);
    }
  }
}
相关文章:
  • 没有找到相关文章