c# distinct by property code example
Example 1: c# distinct by property
objList.Select(o=>o.typeId).Distinct()
Example 2: c# distinct comparer multiple properties
List<Person> distinctPeople = allPeople
.GroupBy(p => new {p.PersonId, p.FavoriteColor} )
.Select(g => g.First())
.ToList();
Example 3: c# distinct array of objects by values
var uniquePersons = persons.GroupBy(p => p.Email)
.Select(grp => grp.First())
.ToArray();
Example 4: c# distinct comparer multiple properties
public static IEnumerable<TSource> DistinctBy<TSource, TKey>
(this IEnumerable<TSource> source, Func<TSource, TKey> keySelector)
{
HashSet<TKey> seenKeys = new HashSet<TKey>();
foreach (TSource element in source)
{
if (seenKeys.Add(keySelector(element)))
{
yield return element;
}
}
}
Example 5: c# distinct dictionary
var temp = _context.PlayerStats.Where(T => T.allianceId == _surf).Select(T => T.guildId).Distinct();
var result = new Dictionary<string, string>();
foreach (var item in temp)
result[item] = _context.PlayerStats.FirstOrDefault(T => T.guildId == item).guildName;
return View(result);