Heim > Backend-Entwicklung > C++ > Wie entferne ich doppelte Objekte basierend auf einer Eigenschaft mithilfe von LINQ?

Wie entferne ich doppelte Objekte basierend auf einer Eigenschaft mithilfe von LINQ?

Susan Sarandon
Freigeben: 2025-01-15 21:57:45
Original
801 Leute haben es durchsucht

How to Remove Duplicate Objects Based on a Property Using LINQ?

Eindeutige Objekte basierend auf Eigenschaften mit LINQ extrahieren

Beim Arbeiten mit Sammlungen kann es vorkommen, dass Sie Duplikate basierend auf bestimmten Objekteigenschaften entfernen müssen. Angenommen, Sie verfügen über eine Sammlung von Car-Objekten, die durch ihre CarCode-Eigenschaft eindeutig identifiziert werden. Die Sammlung kann jedoch Duplikate mit demselben CarCode enthalten. In diesem Artikel wird gezeigt, wie Sie mit LINQ diese Duplikate entfernen und nur eindeutige Car-Instanzen behalten.

Dazu können wir die Technik der Kombination von Gruppierung und Auswahl verwenden. Der folgende Codeausschnitt demonstriert diesen Ansatz:

<code class="language-csharp">List<Car> distinct =
  cars
  .GroupBy(car => car.CarCode)
  .Select(g => g.First())
  .ToList();</code>
Nach dem Login kopieren

In diesem Code verwenden wir zunächst die GroupBy-Methode, um Autos nach ihrer CarCode-Eigenschaft zu gruppieren. Dieser Vorgang erstellt Gruppen für jeden eindeutigen CarCode. Anschließend verwenden wir die Select-Methode, um mit g.First() das erste Auto aus jeder Gruppe zu extrahieren. Dieser Schritt stellt sicher, dass nur ein Car-Objekt pro eindeutigem CarCode beibehalten wird.

Durch die Ausführung dieses LINQ-Ausdrucks erhalten Sie eine neue Sammlung namens „distinct“, die nur eindeutige Car-Objekte basierend auf ihrer CarCode-Eigenschaft enthält.

Das obige ist der detaillierte Inhalt vonWie entferne ich doppelte Objekte basierend auf einer Eigenschaft mithilfe von LINQ?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage