Search code examples
c#linq

How do you use LINQ to find the duplicate of a specific property?


Customer customerOne = new Customer("John", "Doe");
Customer customerTwo = new Customer("Super", "Man");
Customer customerThree = new Customer("Crazy", "Guy");
Customer customerFour = new Customer("Jane", "Doe");
Customer customerFive = new Customer("Bat", "Man");

List<Customer> customers = new List<Customer>();
customers.Add(customerOne);
customers.Add(customerTwo);
customers.Add(customerThree);
customers.Add(customerFour);
customers.Add(customerFive);

What LINQ query would return an enumerable for all customers with the same last name?

Results should include one instance of: John Doe, Jane Doe, Super Man, and Bat Man


Solution

  •     var result = from c in customers
                     join c2 in customers on c.LastName equals c2.LastName
                     where c != c2
                     select c;