SortedList中的值和和键上的条件

时间:2016-07-04 13:07:02

标签: c# linq

我想用linq总结SortedList<DateTime, double>的某些值(时间范围从开始到结束)。键包含工作日的日期,值包含给定日期的可能工作时数。我想回答的问题是,在给定的时间范围内可能有多少小时。

我设法得到钥匙的数量,但我现在已经陷入了这个总和。

计算密钥的代码(感谢stackoverflow)如下所示:

        double ats = (from n in DaysAndHours.Keys
                   where n >= start
                   where n <= end
                   select n).Count();

我如何更改它,使用日期范围内的值填充ats

谢谢!

1 个答案:

答案 0 :(得分:6)

假设您要添加值后应用条件,请使用以下代码并根据需要进行修改

double result = DaysAndHours.Where(n => n.Key >= start)
                            .Where(n => n.Key <= end)
                            .Sum(n => n.Value)