我有兩個表。 Categories
和Ads
。LINQ通過擴展方法通過計數的左外部連接
每Category
可以在Ads
表中有很多廣告。
我想要所有類別的詳細信息,包括他們各自擁有多少廣告。
以下是我的LINQ表達它獲取只有那些廣告可能是bacause FirstOrDefault()
我喜歡的類別知道我怎麼能達到的效果考慮到條件加上只有那些位置ID類(比方說:蓋)「7」。
繼我的表情
var x1 = context.Categories
.GroupJoin(
context.ads,
cat => cat.id,
ad => ad.catid,
(cat, ad) => new { cats = cat, ads = ad })
.SelectMany(
a => a.ads.DefaultIfEmpty(),
(a, y) => new { catss = a.cats, adss = y })
.GroupBy(w => w.adss,ww=>new { cat=ww.catss,count=ww.catss.ads.Count()})
.Where(s=>s.FirstOrDefault().cat.lid==7);
我在尋找擴展方法解決方案 – Alex
@Alex更新。請讓我知道,如果這是你需要的。 – Christos
我希望所有的類別,不管他們有沒有廣告。如果沒有廣告,那麼計數應該是0. – Alex