我有两个表。 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