2013-07-03 43 views
0

排序有這樣我如何特別科拉姆行DataTable中

 Name  Age 

    Raj  20 
    Biny  19 
    Raj  17 
    Jose  27 
    Jose  15 

一個DataTable,當我點擊Name列,那麼我應該得到的數據表分類爲

 Name  Age 

     Biny  19   
     Jose  15 
     Jose  27 
     Raj  17 
     Raj  20 

上表進行排序基於名稱列。我該怎麼做?

回答

1

這手段應該爲你工作。

dataTable.DefaultView.Sort = "Name asc"; 

此外,您還可以創建一個方法,通過將它們作爲參數來更改不同列的升/降行爲。只有挑戰你必須認識到哪個列標題被點擊。那應該不是那麼困難。

希望它有幫助。針對此問題

0

一種解決方案是通過使存儲過程

SET ANSI_NULLS ON 
GO SET QUOTED_IDENTIFIER ON 
GO 

Create PROCEDURE [dbo].[proc_<procedure_name>] 
AS 
BEGIN 

SET NOCOUNT ON 
DECLARE @Err int 

SELECT [Name], [Age] 
FROM [Table_Name] 
ORDER BY Name ASC 
SET @Err = @@Error 

RETURN @Err 
END 

呼叫這個存儲過程

using (var conn = new SqlConnection(connectionString)) 
using (var command = new SqlCommand("ProcedureName", conn) { 
         CommandType = CommandType.StoredProcedure }) { 
conn.Open(); 
command.ExecuteNonQuery(); 
conn.Close(); 

}