Мои данные выглядят следующим образом
Итак, я загрузил их в коллекцию, используя объекты anon для обхода создания класса
List<dynamic> myList = new List<dynamic>()
{
new {
WorkOrderID = 40001,
LastUpdatedAt = DateTime.Parse("2018-10-02"),
Col3 = "abc",
Col4 = "xyz"
},
new {
WorkOrderID = 40001,
LastUpdatedAt = DateTime.Parse("2017-06-01"),
Col3 = "abc",
Col4 = "xyz"
},
new {
WorkOrderID = 40002,
LastUpdatedAt = DateTime.Parse("2018-07-01"),
Col3 = "abc",
Col4 = "xyz"
},
new {
WorkOrderID = 40003,
LastUpdatedAt = DateTime.Parse("2018-09-01"),
Col3 = "abc",
Col4 = "xyz"
},
new {
WorkOrderID = 40001,
LastUpdatedAt = DateTime.Parse("2016-01-01"),
Col3 = "abc",
Col4 = "xyz"
},
new {
WorkOrderID = 40002,
LastUpdatedAt = DateTime.Parse("2016-12-01"),
Col3 = "abc",
Col4 = "xyz"
},
};
Как использовать Linq-to-Objects для извлечения только DISTINCT WorkOrders, которые были обновлены в последнее время.
Другими словами, я должен в итоге выделить 3 строки, выделенные оранжевым.
var myFilteredList = myList.GroupBy (// ?? Полностью потеряно ... help ...