Ist es möglich, die verschiedenen Elemente eines List
basierend auf einer Eigenschaft der Objekte in List
?
Etwas wie: Distinct(x => x.id)
Was mir nicht weiterhilft, ist folgendes: .Select(x => x.id).Distinct()
weil ich dann ein List<int>
anstatt List<MyClass>
Das klingt für mich wie ein Gruppierungskonstrukt, weil Sie entscheiden müssen, welches von dem angeblich identischen Objekt Sie eigentlich zurückgeben möchten
%Vor%Nur weil ID über mehrere Elemente hinweg identisch ist, bedeutet das nicht, dass die Elemente in anderen Eigenschaften identisch sind. Sie müssen also explizit entscheiden, welches Element zurückgegeben wird.
Es gibt eine Überladung für Enumerable.Distinct()
, die IEqualityComparer
benötigt.
Hier ist ein Beispiel, wo ich Integer nach Parität gefiltert habe:
%Vor% Es ist ungeschickt; DistinctBy
wäre sauberer.