我有一个项目集合:
class Item {
DateTime Start {get;set;}
DateTime End {get;set;}
}
随着开始和结束蜜蜂的日子,例如:09/08/2013
我需要列出:(DateTime x - how many items with Start >x and End < x)
我可以这样做:
list(DateTime x, int HowMany) results
dayZero = Earliest start day
dayFinal = Latest end day
for (currentDay : dayZero to dayFinal)
put (currentDay,Get How Many Items with start>currentDay, end<currentDay)
但问题是项目在时间上是分散的,我将计算很多天的项目数量而不改变总项目的数量。我认为最好的解决方案是仅在项目的最初和最后几天进行迭代,但是提高性能的最佳方法是什么?
我正在使用 linq,所以我有:
protected readonly OL4RENTDb _context;
IQueryable<T> query = _context.Set<Item>();
query.Where <- ????