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 以外のソリューションを使用する方がよいでしょう (たとえば、製品を反復処理してから日付を反復処理し、カウントを追跡するために辞書を作成します)。