Linq 基于主视图和详细视图的过滤器如何?

Linq 基于主视图和详细视图的过滤器如何?,linq,master,detail,Linq,Master,Detail,我想要一个像这样的Linq查询: var q = from order in Order join detail in Detail on order.OrderId equals detail.OrderId 这允许我根据用户选择执行以下可选筛选: if (cbxCustomer.Text != string.Empty) { q = q.Where(x=>x.CustomerId = (int)cbxCustomer.SelectedItem) // filter based o

我想要一个像这样的Linq查询:

var q = from order in Order
join detail in Detail on order.OrderId equals detail.OrderId
这允许我根据用户选择执行以下可选筛选:

if (cbxCustomer.Text != string.Empty)
{
  q = q.Where(x=>x.CustomerId = (int)cbxCustomer.SelectedItem) // filter based on master
}

if (cbxItem.Text != string.Empty)
{   
  q = q.Where(x=>x.ItemId = (int)cbxItem.SelectedItem) // filter based on detail
}
结果应该是一个订单列表,其中没有回答上述可选过滤器的重复项


谢谢

应用过滤器后,您只需选择订单,然后使用Distinct LINQ扩展方法