我得到了这个查询:
select t.user
, t.loginDate
from t_login as t
inner join
(
select user, max(loginDate) as mostRecentLoginDate
from t_login
group by user
) as tt
on t.user = tt.user
and t.loginDate = tt.mostRecentLoginDate ;
这个查询很好用,它为我的用户提供了最近的 loginDate。
现在我想在我的 C# 代码的 Lambdas 语法中使用这个查询。
那可能吗 ?
编辑 :
C#代码:
myApp.DataLayer dl = new myapp.DataLayer();
IQueryable<Logins> logins = dl.getAllLogins();
if(displayRecent)
{
logins = logins.Where(p => p.LoginDate == logins.Where(pp => pp.User == p.User).Max(pp => pp.LoginDate));
}
foreach (Login login in logins) // here it crash with StackOverflow exception