I have following class:
public class CustomerDTO
{
public string CardNumber { get; set; }
public string CustomerNumber { get; set; }
public DateTime FetchedDate { get; private set; } = DateTime.Now;
}
This class gets added to a List as so
var duplicateCustomers = new List<CustomerDTO>
{
new CustomerDTO { CardNumber = "123456", CustomerNumber = "1234" },
new CustomerDTO { CardNumber = "123456", CustomerNumber = "1234" },
new CustomerDTO { CardNumber = "654321", CustomerNumber = "4321" },
new CustomerDTO { CardNumber = "654321", CustomerNumber = "4321" }
};
What i want to achieve is have this list filtered to distinct items so just have 2 of the four items & ensuring the FetchedDate field of the duplicate entries is the MAX one.
So all 4 items in above list would appear like following:
- 123456, 1234, 2018-03-16 20:17:001
- 123456, 1234, 2018-03-16 20:17:002
- 654321, 4321, 2018-03-16 20:17:003
- 654321, 4321, 2018-03-16 20:17:004
Then when this list is filtered (using an extension method perhaps) it would appear as so:
- 123456, 1234, 2018-03-16 20:17:002
- 654321, 4321, 2018-03-16 20:17:004
Could someone show me how to achieve this?