0

我有这个清单:

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

我想从中提取另一个 List 是唯一的ProductId==1,而 DateTime 是10.01.2012.

即仅productId==1适用于每个 OrderId。

另外,我只想要该项目的最少 dateTime 版本。

所以对于上面的列表,10.01.2012 是 productId==1 的最短 dateTime。

结果表;

OrderId    ProductId    DateTime

1               1                10.01.2012

我怎样才能做到这一点?

4

1 回答 1

1

这是一个可能的解决方案:

myList = myList.Where(x.ProductId == 1).OrderBy(x => x.DateTime);

这将按 productId 等于 1 的 DateTime 值对您的新列表进行排序。如果您只想获取第一个,可以使用列表的 .First() 方法,例如:

myCustomType = myList.Where(x => x.ProductId == 1).OrderBy(x => x.DateTime).First();
于 2012-07-17T11:43:46.407 回答