Так что я постепенно осваиваю синтаксис LINQ, но этот запрос сводит меня с ума ..
Я хочу вернуть только фильтры с более чем одним значением фильтра. Я пытался поместить группу на fv, но тогда p выходит из области видимости.
var filters = (from p in _db.Products
join pf in _db.ProductFilterSets on p.ProductID equals pf.ProductID
join fv in _db.FilterValues on pf.FilterValueID equals fv.FilterValueID
join f in _db.Filters on fv.FilterID equals f.FilterID
where products.Contains(p)
select f).Distinct();
Что я делаю не так?
Мне в идеале нужно:
var filters = (from p in _db.Products
join pf in _db.ProductFilterSets on p.ProductID equals pf.ProductID
join fv in _db.FilterValues on pf.FilterValueID equals fv.FilterValueID
join f in _db.Filters on fv.FilterID equals f.FilterID
where products.Contains(p) && fv.Count() > 1
select f).Distinct();
Спасибо