C# LINQ Distinct(),但以编程方式选择赢家
我发现,关于根据特定属性选择不同的项 下面将查看我的“结果”列表,按ID对它们进行分组,并选择第一个作为获胜者C# LINQ Distinct(),但以编程方式选择赢家,c#,linq,C#,Linq,我发现,关于根据特定属性选择不同的项 下面将查看我的“结果”列表,按ID对它们进行分组,并选择第一个作为获胜者 results.GroupBy(r => r.ID).Select(g => g.First()).ToList(); 但是,我如何有条件地选择获胜者? 例如,每个结果都包含一个名为Language.Name的属性 当选择不同的结果时,我想选择result.Language.Name.ToLower()==regionalsocode中的一个作为赢家(如果存在) 如果不存
results.GroupBy(r => r.ID).Select(g => g.First()).ToList();
但是,我如何有条件地选择获胜者?
例如,每个结果都包含一个名为Language.Name的属性
当选择不同的结果时,我想选择result.Language.Name.ToLower()==regionalsocode
中的一个作为赢家(如果存在)
如果不存在,则应选择
result.Language.Name.ToLower()=“en”
作为获胜者。您只需更改Select()
:
results.GroupBy(r => r.ID).Select(g => g.First()).ToList();
您只需更改
Select()
:
又是什么问题?
g.First()
以编程方式选择获胜者。又是什么问题?g.First()
以编程方式选择获胜者。