如何按子的属性对父级进行排序 [英] How to sort parent by child's property
问题描述
我正在使用Entity Framework从数据库加载实体。这里的要求之一是whiling检索我要按
排序订单的实体 Customer。 < span style ="font-size:10pt; font-family:Consolas"> Orders.OrderBy(x => x.OrderDetails.SingleOrDefault()。Number);
I’m using Entity Framework to load entities from database. One of the requirement here is whiling retrieving entities I want to sort Orders by Customer.Orders.OrderBy(x => x.OrderDetails.SingleOrDefault().Number);
请注意,在我的情况下,每个订单只有一个OrderDetail。
以下是用于获取客户层次结构的客户存储库
Below is the customer repository used to get customer hierarchy
return repository.GetQuery()
.Where(x => x.CustomerID == customerID)
.Include(x => x.Orders.Select(y => y.OrderDetails))
.Include(x => x.Orders.Select(y => y.Payments))
.SingleOrDefault();
//我如何排序
public class Customer
{
public IList<Order> Orders { get; set; }
}
public class Order
{
public IList<OrderDetail> OrderDetails { get; set; }
public IList<Payment> Payments { get; set; }
}
public class OrderDetail
{
public int Number { get; set; }
}
public class Payment
{
}
&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;
推荐答案
您好lax4u;
Hi lax4u;
此查询仅通过在末尾使用SingleOrDefault方法返回一条记录,因此无需排序,或者我遗漏了什么。
This query only returns one record by the use of the SingleOrDefault method on the end so there is nothing to sort, or am I missing something.
return repository.GetQuery()
.Where(x => x.CustomerID == customerID)
.Include(x => x.Orders.Select(y => y.OrderDetails))
.Include(x => x.Orders.Select(y => y.Payments))
.SingleOrDefault();
这篇关于如何按子的属性对父级进行排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!