【发布时间】:2019-03-20 13:41:04
【问题描述】:
我有一个包含字典列表的列表。 Dictionary 包含带有 DateTime 值的键“date”,以及对应于十进制数字值的各种其他键。我想按日期分组并对每个十进制数字进行平均。
我以前用 linq 做过这个,但用字典似乎无法弄清楚。
List<object> list = new List<object>();
Dictionary<string,object> dictionary = new Dictionary<string,object>
dictionary.Add("date", date)
foreach( field in json )
{
dictionary.Add(field.Key, field.Value)
}
list.Add(dictionary);
list = list.GroupBy(m => (DateTime)m["date"], m => "not sure what to do here", (k,d) => (new object[]{k, d.Average()}).ToList()).ToList();
m["date"] 也不起作用。
字典有以下数据:
- “键”数据-“值”05/29/2015 05:50:06
- “键”处理时间-“值”6
- “键”磁盘使用 - “值”2
当json 中没有更多项目时,将字典添加到列表中并重复该过程。
【问题讨论】:
-
您可以发布您尝试过的内容吗?更容易从不适合你的东西中找到答案
-
我不会做你的作业 :p 对不起哥们
-
日期项可能相差不到一秒,不会分组。因此,在分组之前,请使用 DateTime 属性“日期”将日期截断为一天的开始时间。
-
正如其他人所说:这个网站不是要寻求完整的解决方案,而是要在不适合您的情况下获得帮助。请至少提供您的对象的代码以及您尝试执行的操作。
-
@HugoSilva - 请显示您尝试过的内容以及此类字典的一些示例数据