使用Lambda表达式获取不同的记录

时间:2019-04-09 17:21:45

标签: c# lambda

我有Revision类对象,该对象可以具有多个detail类对象。并且在每个详细信息类中,我可以有多个前缀(其引用类型类)。现在,我想为修订中的每个细节获取不同的前缀记录。我该如何使用Lambda表达式来做到这一点?

List<ReferenceType> prefixes = (List<ReferenceType>)revision.Details
    .GroupBy(p => p.Prefix.Id)
    .Select(grp => grp.First());

我只想在details类中选择不同的前缀记录。上面的代码无法正常工作,例如抛出错误无法将详细信息转换为引用类型。如何在修订版->详细信息->前缀中获取dictinct前缀?

1 个答案:

答案 0 :(得分:0)

这对我有用...

revision.Details.Where(x => x.Prefix!= null).Select(y => y.Prefix).Distinct()