Obtenga elementos distintos de una lista

Tengo una lista de objetos con tres propiedades enteras. ¿Cómo puedo obtener los valores distintos de la primera propiedad entera de mi lista?

preguntado el 09 de enero de 11 a las 12:01

4 Respuestas

Esto debería funcionar,

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

Respondido el 09 de enero de 11 a las 16:01

Lista +1 result = YourListObject.Select (o => o.FirstInteger) .AsParallel (). Distinct (). ToList () "AsParallel ()" podría dar algún beneficio de rendimiento, si no nos importa el orden y tenemos más elementos en el lista. - Sai

Tratar:

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

¿Podrías publicar algún código fuente para que podamos darte un mejor ejemplo?

EDIT:

En mi ejemplo, tengo una colección collection que contiene numerosas instancias de su clase. Entonces estoy seleccionando Property1 de cada clase, filtrando los valores distintos de esa propiedad.

Respondido el 27 de Septiembre de 11 a las 18:09

Encontré esto útil y funcionando bien para mí para cadenas.

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

Espero que esto sea útil para alguien como yo que busca detalles en SO.

Respondido 08 Oct 11, 14:10

Ejemplo de distinción más compleja ...

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();

Respondido 12 Feb 19, 22:02

Es bueno extraer varias partes distintas de un registro: DRapp

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.