LINQ日期聚合
本文关键字:日期 LINQ | 更新日期: 2023-09-27 18:22:32
我有以下输入:
集合A:List<A>
其中A是:
class A
{
DateTime Date;
int Value;
}
该集合表示一系列带值的日期,我想返回一个Dictionary<DateTime, int>
,其中Key
是每周的第一天,包括在该范围中,Value
是该周所有Value
的Sum
。理想情况下,我希望能够指定一周中的第一天。
我正在寻找一个使用lamda
语法的解决方案。
var results = yourList.GroupBy(x => GetFirstDayOfWeek(x.Date))
.ToDictionary(g => g.Key, g => g.Sum(x => x.Value));
// ...
private static DateTime GetFirstDayOfWeek(DateTime dt)
{
// left as an exercise for the reader!
}