[英]C# List querying and grouping
我有这个清单:
OrderId ProductId DateTime
1 1 10.01.2012
1 2 09.01.2012
2 1 11.01.2012
3 1 12.01.2012
3 2 13.01.2012
我想从中提取另一个仅ProductId==1
且DateTime为10.01.2012
。
即,每个orderId仅productId==1
。
我也只想要该项目的最少dateTime版本。
因此对于上面的列表,2012年1月1日是最小的dateTime,其中productId == 1。
结果表;
OrderId ProductId DateTime
1 1 10.01.2012
我怎样才能做到这一点?
这是一个可能的解决方案:
myList = myList.Where(x.ProductId == 1).OrderBy(x => x.DateTime);
这将通过productTime等于1的DateTime值对新列表进行排序。如果只想获取第一个列表,则可以使用列表的.First()方法,例如:
myCustomType = myList.Where(x => x.ProductId == 1).OrderBy(x => x.DateTime).First();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.