Ash*_*ani 3 c# linq sql-to-linq-conversion
我对Linq查询很新,我只想将我的数据库查询转换为Linq.
这是我简单的SQL查询:
var query = "SELECT EnrollmentDate, COUNT(*) AS StudentCount "
+ "FROM Person "
+ "WHERE EnrollmentDate IS NOT NULL "
+ "GROUP BY EnrollmentDate";
var data = db.Database.SqlQuery<EnrollmentDateGroup>(query);
Run Code Online (Sandbox Code Playgroud)
它工作正常,但怎么可能在Linq中编写此查询,我只是无法将group by语句转换为Linq.转换成Linq似乎有些棘手.
谁能帮我这个?
Mar*_*ell 15
var query = from row in db.Person
where row.EnrollmentDate != null
group row by row.EnrollmentDate into grp
select new {
EnrollmentDate = grp.Key,
Count = grp.Count()
};
Run Code Online (Sandbox Code Playgroud)
Hab*_*bib 11
var result = db.Person
.Where(r=> r.EnrollmentDate != null)
.GroupBy(r=> r.EnrollmentDate)
.Select( group=> new
{
EnrollmentDate = group.Key,
Count = group.Count()
});
Run Code Online (Sandbox Code Playgroud)