【发布时间】:2013-04-12 14:31:01
【问题描述】:
我收到了这个问题:
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
【问题讨论】: