と、リストに私はリストとして、次のデータを持っているすべての項目を選択します。LINQのはGROUPBY
raceId data position
1 A 0
1 B 0
1 F 1
1 J 0
2 A 2
2 F 1
3 A 0
3 J 2
3 M 1
3 V 3
私は同じraceidと一致するすべての文字があるレースの合計(カウント)を取得する必要があります。
すなわち加えて「A」と「J」= 2(レースの1および3)
の検索、私はそれぞれの位置データを取得する必要があります。
raceId data position
1 A 0
1 J 0
3 A 0
3 J 2
これまでのところ、次のコードがあります。
var dataValues = new string[] { 'A', 'J' };
var races = raceData
.GroupBy(ac => ac.raceId)
.Select(grp => grp.First())
.Where(t =>
dataValues
.All(s =>
dataValues
.Contains(t.data)
)
);
var racecount = races.count()
問題は、これがデータ内のいずれかの文字があり、すべてのraceId
の値を返すことです。
「グループ」は必要ありません。 'raceValues.Where(record => dataValues.Contains(record.data)); ' – Fabio
サンプル環境を作成する必要がないように' raceData'をポストするのはどうですか? –