2013-08-31 134 views

回答

2

使用本

listCustomFields.sort(); 
+2

Hey @MurtazaMunshi我不明白你爲什麼選擇這個答案。馬爾辛的答案寫得更快更好。如果有多個答案,他們看起來像一樣,選擇速度最快,質量最好的答案。 –

+2

對不起,我是堆棧溢出的新手,我不知道這裏的規則。我會牢記你的話。感謝Thanx指導我。 –

21

您可以使用LINQ OrderBy方法(它會產生新的List<string>與項目排序)字符串列表:

var ordered = listCustomField.OrderBy(x => x).ToList(); 

List<T>.Sort方法(將梳理到位的列表):

listCustomField.Sort(); 
+0

我認爲這是更好的答案,因爲我需要按降序排列,而linq支持這個 – mmeasor

1

你可以使用OrderBy比如;

按照的升序順序對元素進行排序。

listCustomFields = listCustomFields.OrderBy(n => n).ToList(); 

作爲替代方案,你可以使用List<T>.Sort Method也。

List<String> listCustomFields = new List<String>() { "FirstName", "MiddleName", "Class" }; 
listCustomFields = listCustomFields.OrderBy(n => n).ToList(); 

foreach (var item in listCustomFields) 
{ 
    Console.WriteLine(item); 
} 

輸出將;

Class 
FirstName 
MiddleName 

這裏是一個DEMO

0

你不需要LINQ爲:

listCustomFields.Sort(); 

的:而不是創建一個排序的副本,您可以通過調用它Sort()方法排序您到位名單訂單隱式升序。如果您需要更改,請提供自定義比較器。