我是Linq to Entity的新手。我尝试了一些方法来获取一个简单的SQL查询到Linq到实体。
这是我的询问。
PerformanceCounterCategory.GetCategories()
我试过了:
select distinct top 5 convert(varchar,CreatedDate,111) as date, count(Id)
FROM
XYZ l
GROUP BY convert(varchar,CreatedDate,111) order by date desc
但它不适合我。
任何人都可以帮我将这个简单的查询转换为Linq to Entity。
答案 0 :(得分:0)
在GroupBy之后,您必须将结果投影到新对象。然后你可以在新对象上订购。
var dalMemberList = dbContext.XYZ.
Where(c => c.IsDeleted == false)
.Select(converted => new {
NewDate = converted.CreatedDate.Date.ToShortDateString(), //or other convertions
converted.IsDeleted,
converted.CreatedDate
} )
.GroupBy(g => g.NewDate)
.Select(b=> new {
key = b.Key,
list = b.OrderByDescending(t=>t.CreatedDate).Take(5)
});