Sử dụng C# 3 và .Net Framework 3.5, tôi có một đối tượng PersonFind Duplicates dữ liệu đối tượng trong Danh sách đối tượng
public Person
{
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public int SSN { get; set; }
}
và tôi đã có một danh sách trong số họ:
List<Person> persons = GetPersons();
thế nào Tôi có thể nhận được tất cả các đối tượng Người trong những người mà SSN không phải là duy nhất trong danh sách và loại bỏ chúng khỏi danh sách người và lý tưởng thêm chúng vào danh sách khác gọi là "List<Person> dupes
"?
Danh sách ban đầu có thể trông như thế này:
persons = new List<Person>();
persons.Add(new Person { Id = 1,
FirstName = "Chris",
LastName="Columbus",
SSN=111223333 }); // Is a dupe
persons.Add(new Person { Id = 1,
FirstName = "E.E.",
LastName="Cummings",
SSN=987654321 });
persons.Add(new Person { Id = 1,
FirstName = "John",
LastName="Steinbeck",
SSN=111223333 }); // Is a dupe
persons.Add(new Person { Id = 1,
FirstName = "Yogi",
LastName="Berra",
SSN=123456789 });
Và kết quả cuối cùng sẽ phải Cummings và Berra trong danh sách những người ban đầu và sẽ phải Columbus và Steinbeck trong một danh sách gọi là giá trị nhân bản.
Rất cám ơn!
Giải pháp của bạn đã đóng. Dòng 'duplicated = persons.FindAll (duplicatedSSN.Contains (p => p.SSN); 'không hoạt động. Xem câu trả lời của tôi để xem những gì tôi đã sửa để có được câu trả lời –