我有一个 List<UserLoginRecord>
对象,它由三个属性组成。
UserID ID2 LoginTimeStamp
1234567 300009 04/08/2015 18:55:45
1234567 300009 04/08/2015 09:12:32
7654321 300010 14/08/2015 11:55:45
7654321 300010 20/08/2015 13:38:00
我想运行 Linq 查询以仅返回 UserID 和 UserID2 组合的第一条记录。即以下输出
UserID ID2 LoginTimeStamp
1234567 300009 04/08/2015 09:12:32
7654321 300009 14/08/2015 11:55:45
我已经尝试了以下方法,不幸的是不起作用。有人可以帮我吗?
var newList = o_userLoginList.GroupBy(gby => new {gby.UserID, gby.ID2})
.Select(x => new UserLoginRecord
{
UserID = x.UserID,
ID2 = x.ID2,
LoginTimeStamp = x.Min(LoginTimeStamp),
});
最佳答案
var newList = o_userLoginList.GroupBy(gby => new {gby.UserID, gby.ID2})
.Select(x => new UserLoginRecord
{
UserID = x.Key.UserID,
ID2 = x.Key.ID2,
LoginTimeStamp = x.Min(y=>y.LoginTimeStamp),
});
关于c# - List<T> 上的 LINQ 查询根据最小值获取 List<U>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32627976/