我有一个SQL查询实体框架使用LINQ,INNER JOIN,GROUP BY,顺序按
select Firma.Name as companyName,
Taetigkeit.Taetigkeit as skillName,
SUM(Zeit) as time
from Zeiterfassung
inner join Firma On ZEiterfassung.FirmenID = Firma.ID
inner join Taetigkeit on Zeiterfassung.TaetigkeitID = Taetigkeit.ID
group by Taetigkeit, Firma.Name
order by Firma.Name
而且要 “翻译” 它LINQ。这里是我的尝试:
var query = db.Zeiterfassung
.Where(x => x.Firma.ID == x.FirmenID && x.TaetigkeitID == x.Taetigkeit.ID)
.GroupBy(x => x.Taetigkeit.Taetigkeit1)
.Select(x => new Evaluation() { skillName = x.Key, time = x.Sum(y => y.Zeit), //skillName = x.Sum(x => x.Zeit), })
.OrderBy(x => x.skillName);
我不知道谁带的连接和组通过,因为一切的时候,我做了GROUPBY,我不能访问其他成员解决这个问题。
后你有什么到目前为止已经试过。 – 2013-03-11 14:05:38
var query = db.Zeiterfassung.Where(x => x.Firma.ID == x.FirmenID && x.TaetigkeitID == x.Taetigkeit.ID).GroupBy(x => x.Taetigkeit.Taetigkeit1).Select( X =>新评价() { skillName = x.Key, 时间= x.Sum(Y => y.Zeit) // skillName = x.Sum(X => x.Zeit), })。OrderBy(x => x.skillName); – 2013-03-11 14:13:32