Linq Distinct在列表中

Ian*_*ink 4 linq distinct

我有一个这样的列表:

列出人物

age   name
1     bob
1     sam
7     fred
7     tom
8     sally
Run Code Online (Sandbox Code Playgroud)

我需要对人进行linq查询并得到一个不同年龄的数字的int(3)

int distinctAges = people.SomeLinq();
Run Code Online (Sandbox Code Playgroud)

怎么样?怎么样?

tva*_*son 11

选择年龄,然后使用Distinct和Count.

 var ages = people.Select( p => p.Age ).Distinct().Count()
Run Code Online (Sandbox Code Playgroud)

或者您可以使用GroupBy和Count

 var ages = people.GroupBy( p => p.Age ).Count();
Run Code Online (Sandbox Code Playgroud)