我想使用linq从表中获取计数。我有一个包含条形码的表格foo。酒吧桌有barProperty。在sql我可能会做一个连接,但我想知道是否有一个很好的linq方式说,获取foo中的所有行,其中foo的bar有一个barProperty为73. sql中的东西类似于
SELECT COUNT(*) FROM foo
LEFT JOIN ON bar.barid=foo.barid
where bar.barProperty=73;
我可能做错了(我是linq的新手)但我有一个linq到sql dbml,我已经与appropriete id建立了联系。使用父子。
答案 0 :(得分:2)
我相信你正在寻找以下内容;
int recordsCount = (from x in foo
join y in bar
on x.barid equals y barid
where x.barProperty == 73).Count();
我很确定你可以在没有连接的情况下做到这一点,但我更像是一个LINQ to Objects的人,所以我只是给出了最标准的例子。
答案 1 :(得分:1)
如果您正确设置了上下文,则根本不需要加入:
var NumberOfFoos = context.Bars.First(x => x.Id == 73).Foos.Count();