7

DateTime をキーとし、文字列を値とする KeyValuePair アイテムのコレクションがあります。基本的に私のデータは次のようになります。

12/07/2013 - 10220
12/07/2013 - 10220
12/07/2013 - 12220
12/07/2013 - 11240
12/07/2013 - 15220
13/07/2013 - 23220
13/07/2013 - 35620
14/07/2013 - 15620
14/07/2013 - 15620

私は、毎日何個のアイテムを(個別に)持っているかのリストが欲しいです。したがって、クエリの結果は次のようになります。

12/07/2013 - 4
13/07/2013 - 2
14/07/2013 - 1
4

2 に答える 2

3

以下は、完全な例を含むソリューションです

        var list = new[]
        {
            new {Date = new DateTime(2013,07,12), value = 10220},
            new {Date = new DateTime(2013,07,12), value = 10220},
            new {Date = new DateTime(2013,07,12), value = 12220},
            new {Date = new DateTime(2013,07,12), value = 11240},
            new {Date = new DateTime(2013,07,12), value = 15220},
            new {Date = new DateTime(2013,07,13), value = 23220},
            new {Date = new DateTime(2013,07,13), value = 35620},
            new {Date = new DateTime(2013,07,14), value = 15620},
            new {Date = new DateTime(2013,07,14), value = 15620},
        };


        var res = from l in list group l by new { l.Date } into g select new { g.Key.Date, value = g.Distinct().Count() };

        foreach (var item in res)
        {
            Console.WriteLine(item.Date + " " + item.value);
        }
于 2013-07-15T11:13:56.243 に答える