public class Product {
public List<DateTime> FailureDates { get; set; }
}
我有一个List<Product>
,然后我试图根据一个List<DateTime>
在图表中使用的分组。分组应该基于 DateTime 对象的年份。所以我希望最终结果看起来像:
按年份划分的故障总数
2012: 1,
2011:5,
2010:3
... 等等。
在 DateTime 对象成为具有以下代码的列表之前,我最初有此工作:
return Json.Encode(Products.Where(s => s.FailureDate != DateTime.MinValue).GroupBy(s => s.FailureDate.Year).Select(s => new { Year = s.Key.ToString(), FailureCount = s.Count() }).ToArray());
但是,现在 DateTime 是一个列表,所以我不确定如何对它进行分组。我认为需要进行合并才能使其正常工作,因此也许 LINQ 代码最终会变得过于混乱,我最好使用非 LINQ 解决方案(例如,遍历我的产品,然后遍历我的日期和建立一个字典来跟踪计数)。