所以,我有一个看起来像这样的列表.它基本上是一堆物品的状态历史,最近的状态代表当前状态.
Record Id State Date ===== === ========= ======= 1 A Waiting Jan 01 2 A InProgress Jan 02 3 A Finished Jan 03 4 B Waiting Jan 02 5 C Waiting Jan 01 6 C InProgress Jan 02 7 D Waiting Jan 01 8 D InProgress Jan 02
我正在寻找的是能够查询每个项目的“当前”状态.
例如,我想说:“给我所有的ID都是’InProgress’”并获得Id D和Id C,但不是Id A(因为它的最新状态是’完成’).
我知道我必须做一些分组和一些订购或Maxing,但我不能完全把它放在一起.
解决方法
myList.GroupBy(m => m.Id) .Select(g => g.OrderByDescending(x => x.Date).First()) .Where(<your filter>);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。