假设我有这样一个类:
public class TestParent
{
public string ParentID { get; set; }
public List<TestGroup> GroupItems { get; set; }
}
public class TestGroup
{
public string GroupID { get; set; }
}
如何按ParentID排序TestParent类型的对象,又按GroupID对其中的所有TestGroup进行排序?
我可以用这段代码完成:
for (int i = 0; i < ResponseArray.Count; i++ )
{
ResponseArray[i].GroupItems = ResponseArray[i].GroupItems
.OrderBy(x => x.GroupID)
.ToList();
}
return ResponseArray.OrderBy(x => x.GroupID).ToList();
只使用LINQ可以实现相同的目的吗?
答案 0 :(得分:0)
您可以在OrderBy之后使用Select
并在其中订购GroupItem:
ResponseArray.OrderBy(t => t.ParentID).Select(t => new TestParent()
{
ParentID = t.ParentID,
GroupItems = t.GroupItems.OrderBy(g => g.GroupID).ToList()
})