如果您已聲明類似下面的類:
internal class DayNumber
{
public string Day { get; set; }
public int Number { get; set; }
}
,並定義了諸如列表以下之一:
var list = new List<DayNumber>
{
new DayNumber {Day = "2017-7-25", Number = 10},
new DayNumber {Day = "2017-7-24", Number = 3},
new DayNumber {Day = "2017-7-23", Number = 7},
new DayNumber {Day = "2017-7-22", Number = 4},
new DayNumber {Day = "2017-7-21", Number = 2},
new DayNumber {Day = "2017-7-20", Number = 4},
new DayNumber {Day = "2017-7-19", Number = 5},
new DayNumber {Day = "2017-7-18", Number = 8},
new DayNumber {Day = "2017-7-17", Number = 2},
new DayNumber {Day = "2017-7-16", Number = 3}
};
那麼你可以嘗試這樣的事:
var grouped = list.Select(item => new
{
Parsed = DateTime.ParseExact(item.Day, "yyyy-M-dd", CultureInfo.InvariantCulture),
Number = item.Number
})
.OrderBy(item => item.Parsed)
.Select((item, index) => new
{
Index = index,
Item = item
})
.GroupBy(item => item.Index/5)
.Select(gr => new
{
Date = gr.First().Item.Parsed,
Count = gr.Sum(x => x.Item.Number)
})
.ToList();
的日子獨特? – Christos
@克里斯托斯是的,這些日子是獨一無二的。我糾正了我在問題列表中犯的錯誤。 這個列表基本上是從現在開始每天都會回到30或90或365天,並且每天的值(可以是0) – ArmenHeat