我想查询一个对象的层次结构是这样的:C#lambda表达式,子子查询
客户 - >IList
订单 & 订单 - >IList
产品
我Customer
对象拥有一组订单,我的Order
对象有一个产品集合。
我想要做的是让订购特定产品的客户。我会通过product id
来查询。在查询结束时,我想获得Customer list
。
我试过了,但没有奏效。
public ICollection<Customer> GetByParticularProduct(int productId)
{
return allCustomers
.Where(customer => customer.Orders
.Any(order => order.Products
.Any(prod => prod.Id == productId)))
.ToList();
}
我该如何解决这个问题?
你所说的 “没有工作” 的意思是?什么是'ProductsAny()'? – millimoose
对不起,我修改了它。我的意思是没有工作。我得到一个ArgumentNullException,并发现问题不是我的查询。这是我的映射。我的订单集合没有被映射到正确的位置,而且它是空白的。现在我将其映射到正确的位置并且它可以正常工无论如何感谢您的关注... – ayk