根据另一个属性(LINQ)计算属性值

时间:2012-03-14 09:27:07

标签: c# linq

我有一个包含属性的类:Row, Seat。 例如,我们有以下数据:

Row Seat
1    1
1    2
1    3
2    4
2    5

我想要包含Dictionary<int,int>作为键的返回Row,以及行中的座位数作为值。 对于上面的例子,字典将包含两个记录:

Key Value
1    3
2    2

我该怎么做?
感谢。

1 个答案:

答案 0 :(得分:4)

它没有太多参与:

var seatings = new List<Seatings>(); /* list of your class instances */
seatings.GroupBy(s => s.Row).ToDictionary(s => s.Key, s => s.Count());

按行进行分组会生成一组组,其中每个组的行都等于Key,并且可以枚举该行以生成该行中的所有席位。您可以使用ToDictionary直接创建字典。