我正在查找LINQ查询,该查询将仅选择那些日期间隔不超过20秒的对象。例如:LINQ按日期间隔获取对象
AuthenticationEssay[] essays = new AuthenticationEssay[] {
new AuthenticationEssay() { Date = DateTime.Now.AddSeconds(20), Success = false },
new AuthenticationEssay() { Date = DateTime.Now.AddSeconds(24), Success = false },
new AuthenticationEssay() { Date = DateTime.Now.AddSeconds(29), Success = false },
new AuthenticationEssay() { Date = DateTime.Now.AddSeconds(38), Success = false },
new AuthenticationEssay() { Date = DateTime.Now.AddSeconds(125), Success = false },
new AuthenticationEssay() { Date = DateTime.Now.AddSeconds(347), Success = false },
new AuthenticationEssay() { Date = DateTime.Now.AddSeconds(400), Success = false },
new AuthenticationEssay() { Date = DateTime.Now.AddSeconds(422), Success = false },
new AuthenticationEssay() { Date = DateTime.Now.AddSeconds(446), Success = false },
new AuthenticationEssay() { Date = DateTime.Now.AddSeconds(467), Success = false }
};
我想只选择那些对象,它们的日期间隔的第一次出现是不大于针对下一个对象20秒。在这种情况下,查询应只返回前4个对象。任何想法? :(
UPDATE
对不起,我忘了提,我被按降序排序的数组。所以,是的,在阵列中的位置应该不会对查询产生任何影响。
如果最后一项是“AddSeconds(465)',而不是将它包括在内? – 2011-04-16 19:14:24
你的意思是日期间隔不超过20秒?你的意思是DateTime.Now和essay [i] .Date之间的区别吗?你是指短文[0]和短文[1]之间的意思? – mfanto 2011-04-16 19:14:26
我的意思是散文[0]和散文[1]之间。但在做出一些比较之前,我正在对数组进行排序 – Davita 2011-04-16 19:26:34