[英]How to sort the list by descending order
public class Items {
public string Name {get; set;}
public int Id {get; set;}
public List<string> SubItems {get; set;}
}
以上是我的 class。 在我的代碼中的某個地方,我正在使用 List 並添加記錄。
List<Items> listOfItems = new List<Items>();
listOfItems.OrderByDescending(i => i.SubItems).ToList();
listOfItems 有一些數據。 我想通過 LINQ 查詢訂購 listOfItems列表中的SubItems 。
你不能用 LINQ 來做,因為 LINQ 是query ,你想改變你的數據,而不是從數據中查詢一些東西。 但是您仍然可以使用序數循環對每個Item
的內容進行排序
listOfItems.ForEach(x=>x.SubItems.Sort((a, b) => b.CompareTo(a)))
或者
listOfItems.ForEach(x=>x.SubItems = x.SubItems.OrderByDescending(i => i)))
我認為這里的問題是 OrderBy() 返回新列表,您目前沒有將其存儲在任何地方。 所以應該是:
List<Items> listOfItems = new List<Items>();
var orderedList = listOfItems.OrderByDescending(i => i.SubItems).ToList();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.