none
datatable排序。 RRS feed

  • 问题

  • 请问datatable如何进行排序。

    DataTable dt=new DataTable();

    dt=GetInfo();//这里的GetInfo方法不是一次性从数据库中提取的记录,而是多次从数据库中提取后依次添加到ViewState中的,例如先选择了A订单数据加入到ViewState,然后再选择B订单再追加到ViewState等等订单数据。

    然后在这里对dt进行排序,然后再绑定在ListView上。

    ListView1.DataSource=dt;

    ListView1.DataBind();

    2011年11月7日 4:47

答案

  • 你可以試試看用DataTable的SELECT方法多載來做排序,不過請注意是否有效能不佳的問題。

    static void Main(string[] args)
    {
    	DataTable dt = new DataTable();
    
    	SqlConnectionStringBuilder scsb = new SqlConnectionStringBuilder();
    	scsb.DataSource = "."; //資料庫主機名稱或IP
    	scsb.InitialCatalog = "Northwind"; //資料庫名稱
    	scsb.IntegratedSecurity = true; //使用Windows驗證
    	using (SqlConnection con = new SqlConnection(scsb.ToString()))
    	{
    		using (SqlDataAdapter adapter = new SqlDataAdapter("select * from region", con))
    		{
    			adapter.Fill(dt);
    			foreach (DataRow row in dt.Select("", "RegionID ASC"))
    			{
    				Console.WriteLine(row[0]);
    			}
    		}
    	}
    	Console.ReadKey();
    }
    



    以上說明若有錯誤請指教,謝謝。
    http://www.dotblogs.com.tw/terrychuang/
    • 已标记为答案 cycc 2011年11月7日 6:01
    2011年11月7日 5:54