Morelinq由多个属性截然不同



我一直在使用Morelinq创建一个不同的对象列表。我的对象大约有20个属性,在最终列表中都不是唯一的。但是,一起使用的2个属性可以揭示唯一的对象:

父际ID |儿童ID

  • 1 |1
  • 1 |2
  • 2 |1
  • 2 |2
  • 2 |3

我看到了这个问题,并认为这是同一问题,所以我下载了Morelinq并尝试使用:

list = list.DistinctBy(c => new { c.id, c.parentid }).ToList();

但是,这导致了这两个属性的独特列表,而不是两者(所以我每个父母只见一个孩子)

使用Morelinq实现这一目标的正确方法是什么?

    list = list
           .GroupBy(a=> new { a.id, a.parentid})
           .Select(a=> a.first());

最新更新