在LINQ中组合多个表
我有一个非常简单的SQL查询
Select r.SpaceID,Count(*), SpaceCode from Rider r join Spaces s on r.SpaceID=s.SpaceID Group By r.SpaceID, s.SpaceCode
请注意我的group by子句在多个表上,我想在linq中做同样的事情,我知道如何对单个表进行分组,但是关于多个表我不知道。
要对多个表进行分组,您可以执行以下操作:
group new { r,s } by new { r.SpaceID, s.SpaceCode }
这可能有所帮助:
( from r in db.Rider join s in db.Spaces on r.SpaceID equals s.SpaceID group new { r,s } by new { r.SpaceID, s.SpaceCode } into grp select new { Count=grp.Count(), grp.Key.SpaceID, grp.Key.SpaceCode } )
db是数据库上下文
- 使用HttpRequestMessage或Stream上传REST文件?
- 在规范中组合C#代码和数据库代码
- C#模型的自定义设置器
- Panel中的MouseEnter和MouseLeave事件及其子控件
- 无法加载文件或程序集’System,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089’或其依赖项之一
- Lucene Hightlighter有时会莫名其妙地返回空白片段
- HttpListener在Mono上工作得很好吗?
- EF Code First – 全局设置nvarchar上的varchar映射
- NHibernate3查询与QueryOver