Tom*_*len 5 c# linq asp.net lambda
我有这个查询,计算用户在我们网站上的总数+ 1:
return db.tblGPlusOneClicks
.Where(c =>
c.UserID == UserID
&& c.IsOn
)
.Select(c=>c.URLID)
.Distinct()
.Count();
Run Code Online (Sandbox Code Playgroud)
数据来自此表:
简单计算不同的URL,其中IsOn = true
将显示他们拥有的页数+ 1.但是,该表还通过将值存储IsOn
为false 来存储何时取消加上某些内容.
如果我:
在我们的查询中,它不应该将此视为该用户的加号,因为此用户的此URL的最后一个操作是取消加1.同样,如果我:
它应该在原始查询中计算,因为该URL的最后一个操作是加1.
如何修改我的查询以计算实例的位置,该实例IsOn
是true
该用户对该URL的最后一次已知操作?我正在努力编写一个执行此操作的查询.
尝试这个:
return db.tblGPlusOneClicks
.Where(c => c.UserID == UserID)
.GroupBy(c => c.URLID)
.Count(g => g.OrderByDescending(c => c.Date).First().IsOn);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
52 次 |
最近记录: |