2014-09-18 66 views
0

我正在研究一個應用程序,其中有一個我自己定義的類型的C#列表,它有大約5列和幾行數據。特別是我有一個字段類型的字段,通常包含字母數字項。通過考慮每個單元格中元素的前三個字母對列表中的列進行排序

的樣本數據

Term  Strike Strategy Volume 
F15   405  STRDL  100 
Z14   375  PUT  1115 
A14   400  STRDL  100 
Z14 vs F15 475/500 CS  200 
A15-Z15  300/375 3WAY (PS) 25 

我想根據期限字段,以數​​量的最高優先級就像在上面的示例清單,14號,15所有項目的前三個字母排序上面的列表中..然後由字母

得到的數據應該是這樣的

Term  Strike Strategy Volume 
A14   400  STRDL  100 
Z14   375  PUT  1115  
Z14 vs F15 475/500 CS  200 
A15-Z15  300/375 3WAY (PS) 25 
F15   405  STRDL  100 

是否有解決T A好方法他?

+0

你有什麼代碼來支持你正在嘗試做什麼..這將駐留在DataTable或DataSet ..等等..?或者你是否有這樣的列表更具體的你有什麼和你的預期結果應該是..聽起來像一個很好的工作查詢/存儲過程 – MethodMan 2014-09-18 17:52:13

回答

3

你可以把它寫像這樣使用LINQ:

var res = theList.OrderBy(x => int.Parse(x.Term.Substring(1, 2))) 
       .ThenBy(x => x.Term.Substring(0, 1)).ToList(); 

這將返回一個新的排序列表。

相關問題