我有一个对象的枚举:
public IOrderedEnumerable<RentContract> Contracts {
get { return RentContracts.OrderByDescending(rc => rc.DateCreated); }
}
我必须将给定的RentContract实例与列表上的前一个RenContract实例进行比较,以突出显示两个对象之间的更改,这是获取前一个元素的最正确方法吗?
答案 0 :(得分:0)
这是不可能直接的。你可以这样做:
var input = new SomeClass[10]; //test data
var zipped = input.Zip(new SomeClass[1].Concat(input), (a, b) => { a, b });
var result = zipped.Where(x => x.b == null || x.a.DateCreated < x.b.DateCreated.AddHours(-1)); //some example
此解决方案正在使用自身压缩序列,但会被一个null元素偏移。