我有一个List<dynamic>
具有相同 ID 但不同 ValidTo/ValidFrom 值的 N 条记录。
假设我有这些对象:
Id: 1, ValidFrom: 1/1/2012, ValidTo: 1/1/2015
Id: 1, ValidFrom: 1/1/2013, ValidTo: 1/1/2015.
Id: 2, ValidFrom: 6/1/2012, ValidTo: 1/1/2015
Id: 2, ValidFrom: 6/1/2013, ValidTo: 1/1/2015
Id: 3, ValidFrom: 12/1/2012, ValidTo: 1/1/2015
Id: 3, ValidFrom: 12/1/2013, ValidTo: 1/1/2015
鉴于此,我想从当前集合中删除旧记录(对于每个 ID,ValidFrom 日期最低的那个),或者,只获取一个具有每个 ID 的新集合,但那些具有最大的 ValidFrom 日期。
因此,预期的输出将是:
Id: 1, ValidFrom: 1/1/2013, ValidTo: 1/1/2015.
Id: 2, ValidFrom: 6/1/2012, ValidTo: 1/1/2015
Id: 3, ValidFrom: 12/1/2013, ValidTo: 1/1/2015
也就是说,在 ID 为 1 的两条记录中,ValidFrom 最低的一条被丢弃,对于 ID2 和 ID3,依此类推。
我认为这将通过分组来完成,我只是不确定如何。
谢谢您的帮助。