我正在尝试查询产品列表,每个产品都有一个订单列表。
所以是这样的:
from s in products
join o in orders on s.ProductID = o.ProductID
select new ProductRecord
{
ProductName = s.Name,
OrderList = o.Select(x=>new OrderRecord(OrderID = x.OrderID, OrderName = x.OrderName).ToList()
}
OrderList 是一个List<OrderRecord>
我的查询比这复杂得多,但这说明了这个想法。
最后,我想在我的网页上列出这样的内容:
Product 1
Order 1
Order 2
Order 3
Product 2
Order 4
Order 5
Order 6
这虽然不是很好。这是一个缓慢的查询,Mini Profiler 说我的页面上有 100 个重复查询。如果我把那些OrderList
东西拿出来,一切都会变得活泼。
我想我在处理这个问题时都错了。我如何有效地查询这个?