我有以下列表Lsit<Car> lstcarIP
它有以下数据
ID | Name | Year
0 - Zen - 1990
1 - Alto - 2003
3 - Zen - 2004
4 - Santro - 2000
5 - Alto - 2003
无论输出list<Car> lstFinal
应具有的ID和年份
ID | Name | Year
0 - Zen - 1990
1 - Alto - 2003
4 - Santro - 2000
或
ID | Name | Year
3 - Zen - 2004
4 - Santro - 2000
5 - Alto - 2003
即如果名称再次出现,则只应向list<Car> lstFinal
添加一个条目。我尝试使用LastorDefault
或GroupBy
lstFinal= lstcarIP.GroupBy(s => s.Name)
.Where(g => g.Count() > 1)
.SelectMany(g => g)
.ToList<Car>();
但无法获得正确的结果。你能纠正我并指出我的错误。 谢谢您的帮助! :)
答案 0 :(得分:6)
您只需GroupBy
,然后获取First
lstFinal = lstcarIP.GroupBy(s => s.Name)
.Select(g => g.First())
.ToList<Car>();