У меня есть список объектов, некоторые из которых имеют одинаковые идентификаторы, поэтому я хотел бы удалить те элементы, которые дублируются.
Я пробовал что-то вроде этого:
List<post> posts = postsFromDatabase.Distinct().ToList();
Но не работает!
Я написал этот метод, чтобы избежать дублирования:
public List<Post> PostWithOutDuplicates(List<Post> posts)
{
List<Post> postWithOutInclude = new List<Post>();
var noDupes = posts.Select(x => x.Id).Distinct();
if (noDupes.Count() < posts.Count)
{
foreach (int idPost in noDupes)
{
postWithOutInclude.Add(posts.Where(x => x.Id == idPost).First());
}
return postWithOutInclude;
}
else
{
return posts;
}
}
Есть идеи, как улучшить производительность ??
Заранее спасибо.