-1

私は次のデータ構造を持っています(簡略化):クラスTestClassの巨大なリスト

public class TestClass
{
   public string Name { get; set; }
   public int Value { get; set; }
   public DateTime Date { get; set; }
}

LINQ-Queryを見つけて、1日に同じ名前と値を持つアイテムの数を取得しようとしています。複数のgroupby-Statementsで試しましたが、取得できませんでした...例:

Name  | Value | Date
Alice | 42    | 11.02.1900
Bob   | 4211  | 22.03.2030
Bob   | 4211  | 22.03.2030
Bob   | 42    | 22.03.2030
Bob   | 42    | 22.03.2030
Alice | 4711  | 30.01.2045

取得したいこのデータ(最後の番号が重要です)

アリス、42、11.02.1900、1
ボブ、4211、22.03.2030、3ボブ、42、22.03.2030、2 アリス
、4711、30.01.2045、1

ご協力いただきありがとうございます!

よろしく

4

2 に答える 2

2

あなたが探しています

list.GroupBy(o => new { o.Name, o.Value, o.Date })
    .Select(g => new { g.Key.Name, g.Key.Value, g.Key.Date, Count = g.Count() })
于 2012-07-03T15:00:42.073 に答える
0
from i in coll
group i by new { i.Name, i.Value, i.Date } into g
select new { key = g.Key, count = g.Count() }
于 2012-07-03T15:00:58.880 に答える