2010-02-11 28 views
1

有人可以将此查询转换为linq2sql对我来说?试图教我自己LINQ看,如果我想使用它的一个小项目,以及越来越挂在最小的细节...转换此SQL与计数和分组到linq2SQL

SELECT 
    Warrant.ID, 
    Warrant.MeetingDate, 
    Warrant.MeetingType, 
    Warrant.Notes, 
COUNT(WarrantArticles.ID) AS Cnt 
FROM Warrant INNER JOIN WarrantArticles ON Warrant.ID = WarrantArticles.WarrantID 
    group by Warrant.ID, Warrant.MeetingDate, Warrant.MeetingType, Warrant.Notes 
+0

什么是您的DataContext是什么样子? – 2010-02-11 12:48:24

+0

不完全确定如何回答这个问题:只有两个表,其中权证表中的ID是主键,并且它通过一个名为WarrantID的字段与一个多对一关系中的warrantArticles表相链接?这只是一个简单的测试,试用linq – 2010-02-11 13:03:09

回答

2

Daniel问及你的ObjectContext,因为如果不知道这个问题,很难给你一个确定的答案。

话虽这么说,您的查询可能是这个样子

var result = from w in context.Warrant select new {w.ID, w.MeetingDate, w.MeetingType, w.Notes, w.Articles.Count}; 

or 

var result = context.Warrant.Select(w=> new new {w.ID, w.MeetingDate, w.MeetingType, w.Notes, w.Articles.Count}); 
+0

不完全是答案,但给了我需要的东西 - 缺少线索 - 谢谢。 – 2010-02-11 13:41:45

2

有一个伟大的工具,它会为你做这个。该工具被称为Linqer(我没有它的隶属关系)。它会占用大多数SQL语句并将它们转换为Linq查询。我多次使用它来帮助我转换更难的查询。