c#Linq由孩子们订购

时间:2014-07-23 12:19:59

标签: linq sql-order-by children

我有一个(人)到多个(宠物)的关系,我想按父母的姓名属性订购,然后按照他们的名字属性订购孩子

我想要的结果示例:

Person: Bill
Pet: dog
Pet: fish

Person: Roger
Pet: cat
Pet: monkey
Pet: horse

我已经尝试了以下内容,并由孩子们订购:

var result3 = SystemContext.Person
.OrderBy(tt => tt.Name)
.ThenBy(tt => tt.Pet.OrderBy(tte => tte.Type).FirstOrDefault().Name);

任何想法都会得到满足

1 个答案:

答案 0 :(得分:0)

如果我没有找到你想要的东西,你可以这样做:

var result = SystemContext.Person.OrderBy(t=>t.Name)
             .Select(x=>new {Person = x, Pets = x.Pet.OrderBy(p=>p.Type))

结果将是一个有序的对象集合,有两个属性 - 人和宠物。宠物也将为每个人订购。