Найти повторяющееся в списке

У меня есть такой же список людей, как показано ниже:

List<Person> Persons=New List<Person>

Класс Person содержит некоторые свойства, такие как Id, Firstname, LastName, Age, ... в этом списке существует повторяющийся объект с одинаковыми Firstname и LastName.

как я могу распознать и найти повторяющиеся объекты Id?


person Morteza Nemati    schedule 06.03.2013    source источник
comment
вы имеете в виду firstname = lastname) или (firstname = firstname and lastname = lastname)?   -  person ssilas777    schedule 06.03.2013
comment
firstname = firstname и lastname = lastname   -  person Morteza Nemati    schedule 06.03.2013
comment
Надеюсь, вы получили ответ по предоставленным ссылкам   -  person ssilas777    schedule 06.03.2013


Ответы (2)


Из блога Эрика Уайта:

int[] listOfItems = new[] { 4, 2, 3, 1, 6, 4, 3 };
var duplicates = listOfItems
    .GroupBy(i => i)
    .Where(g => g.Count() > 1)
    .Select(g => g.Key);
foreach (var d in duplicates)
    Console.WriteLine(d);
person Jordan Parmer    schedule 06.03.2013
comment
Я хочу точно определить позицию повторяющегося объекта в списке! не группировать по результату. - person Morteza Nemati; 07.03.2013

Если я правильно помню, это должно создать уникальный список, если это то, что вам нужно:

List<String> list2 = new ArrayList<String>(new HashSet<String>(list1));
person Harlin    schedule 06.03.2013