Mit Linqs
Lösung: Distinct()
Aus diesem Grund können Sie das Objekt nach den erforderlichen Attributen gruppieren und das erste Element aus jeder Gruppe auswählen. Auf diese Weise erhalten Sie eine Liste, das Objekt in dieser Liste ist für das angegebene Attribut eindeutig. Beispiel:
Betrachten Sie ein Personobjekt mit ID- und Namensattributen:
, um verschiedene Personallisten basierend auf ID -Attributen zu erhalten:
Dies erzeugt eine Liste mit nur Person1 und Person3.
<code>Person1:Id=1,Name="Test1" Person2:Id=1,Name="Test1" Person3:Id=2,Name="Test2"</code>
Mehrere Attribute:
List<Person> distinctPeople = allPeople .GroupBy(p => p.Id) .Select(g => g.First()) .ToList();
Wenn Sie nach mehreren Attributen gruppieren müssen, können Sie einen anonymen Typ verwenden:
<事> Hinweis:
Einige Abfrageanbieter müssen möglicherweise
List<Person> distinctPeople = allPeople .GroupBy(p => new { p.Id, p.FavoriteColor }) .Select(g => g.First()) .ToList();
verwenden, um sicherzustellen, dass jede Gruppe mindestens ein Element hat. Für kompatible Methoden, die mit LINQ mit Entitäten (EF Core) kompatibel sind
Das obige ist der detaillierte Inhalt vonWie kann ich LINQ verwenden, um unterschiedliche Objekte basierend auf bestimmten Eigenschaften zu erhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!