datatable中有个string型字段存放的是"1","10"等值。
我想用defaultview.sort的方法把这个字段按数值型排序,不知道表达式怎么写?
请指教

解决方案 »

  1.   

    private void SortData(DataTable table)
    {
    DataTable dttmp = table.Copy();
    DataRow[] drs = dttmp.Select("1=1", "field1");// 按field1字段排序. table.Rows.Clear();
    foreach(DataRow dr in drs)
    {
    table.Rows.Add(dr.ItemArray);
    }
    table.AcceptChanges();
    }
      

  2.   

    以下示例指示 DataView 按照两列对表进行排序。[Visual Basic] 
    Private Sub SortByTwoColumns()
       ' Get the DefaultViewManager of a DataTable.
       Dim myDataView As DataView
       myDataView = DataTable1.DefaultView
       ' By default, the first column sorted ascending.
       myDataView.Sort = "State, ZipCode DESC"
    End Sub[C#] 
    private void SortByTwoColumns()
    {
       // Get the DefaultViewManager of a DataTable.
       DataView myDataView = DataTable1.DefaultView;
       // By default, the first column sorted ascending.
       myDataView.Sort = "State, ZipCode DESC";
    }
      

  3.   

    defaultview.Sort = "field1"; 按照field1排序.
      

  4.   

    最好還是直接在數據庫裏面用order排好再取出來.