我有一個場景,其中有一個對象列表,其中包含對象中的日期時間字段。我試圖找出是否有一種方法可以使用LINQ按照順序日期時間對列表進行分組,並將順序日期時間作爲範圍返回列表的子集。在列表上使用LINQ返回基於連續日期的子集列表
public virtual IList<LineItem> LineItems { get; set; }
...
public class LineItem
{
public virtual string Status { get; set; }
public virtual DateTime TransDate { get; set; }
...
}
所以如果我有6個LineItem
s的Status = P
所有和
TransDate = { 8/1/2011 , 8/2/2011 , 8/3/2011 , 8/5/2011 , 8/6/2011 , 8/9/2011 }
分別,我想返回以下列表:
{ (P, 8/1/2011-8/3/2011) , (P,8/5/2011-8/6/2011) , (P,8/9/2011) }
有什麼想法?我可以通過手動遍歷列表和檢查TransDate來查看它是否是順序的,我只是尋找一種更優雅(最好是LINQ)的方式來做到這一點。謝謝!
日期會不同嗎?另外,他們是否保證按照時間順序排序? – Ani