customer
我已经为主要实体和相关实体(订单)编译了查询。
var customer = MyService.GetCustomer<Customer>().where(c => c.Id == fooId).ToList();
var customerOrders = MyService.GetOrders<Order>().where(o => o.CustomerId == fooId && o.IsActive).ToList();
但是我认为我可以通过导航属性而不是编译的查询调用来获取所有订单,因为customer
下面的代码已经将它们加载到内存中:
var customerOrders = customer.Orders.where(o => o.IsActive).ToList(); // I didn't do filter further more
但是当我测量时间时,我找不到任何相当大的差异(数据库有 500 个客户和 4000 个订单。每个特定客户都有 30 个活动订单和大约 400 个非活动订单)。
这两者中哪一个会有更好的表现?
我无法完全理解这个相关问题