2013年7月3日 星期三

如何改變DataTable內的資料排序

記錄一下如何改變DataTable內的資料排序

1.使用DataTable.DefaultView.Sort排序
 只有在讀取DataTable.DefaultView時, 才會有排序的效果
   DataTable dt1 = new DataTable();

   /*
      填入dt1資料
   */

   dt1.DefaultView.Sort([Sort]);

2.使用DataTable.Select排序, 再將排序好的資料Import到另一個DataTable
 直接讀取第2個DataTable(dt3)時, 就會有排序的效果
   DataTable dt2 = new DataTable();
   DataTable dt3 = new DataTable();

   /*
      填入dt2資料
   */

   //將dt2資料結構複製給dt3
   dt3 = dt2.Clone();
   foreach DataRow dr in dt2.Select([Filter],[Sort])
   {
      dt3.ImportRow(dr);
   }
   dt2.Clear();

[Filter] : 直接撰寫SQL Where條件, ex. " COLA = 'A' AND COLB = 'B' "
[Sort] : 直接選寫Order By內容, ex. " COLA,COLB,COLC DESC "

沒有留言:

張貼留言