web-dev-qa-db-de.com

Holen Sie sich verschiedene Elemente aus einer Liste

Ich habe eine Liste von Objekten mit drei ganzzahligen Eigenschaften. Wie kann ich die eindeutigen Werte der ersten Ganzzahl-Eigenschaft aus meiner Liste erhalten?

21
Mazdak

Das sollte funktionieren,

List<int> result = YourListObject.Select(o => o.FirstInteger).Distinct().ToList();
55
A_Nablsi

Versuchen:

var g = collection.Select(i => i.Property1).Distinct();

Könnten Sie einen Quellcode posten, damit wir Ihnen ein besseres Beispiel geben können?

BEARBEITEN:

In meinem Beispiel habe ich eine Sammlung collection, die zahlreiche Instanzen Ihrer Klasse enthält. Ich wähle dann Property1 aus jeder Klasse aus und filtere nach den unterschiedlichen Werten dieser Eigenschaft.

9
Jason Evans

Ich habe das für nützlich gehalten und funktioniert gut für Saiten.

var distinctNames = (from d in YourList select d).Distinct();

Ich hoffe, das ist nützlich für jemanden wie mich, der nach Details in SO sucht.

6
Saravanan

Beispiel für eine komplexere Unterscheidung ....

licenseLookupItems = tmpList
                .GroupBy(x => new {x.LicenseNumber, x.Name, x.Location, x.Active, x.Archived})
                .Select(p => p.FirstOrDefault())
                .Select(p => new LicenseNumberLookupItem
                {
                    LicenseNumber = p.LicenseNumber,
                    Name = p.Name,
                    Location = p.Location,
                    Active = p.Active,
                    Archived = p.Archived
                })
                .ToList();
0
IdahoB