选择两个日期之间的所有数据
Hellow everyone!
我有一个LINQ查询问题,我没有看到问题。
案例:
我必须选择2个日期之间的所有约会。 (ex 21/04/2014 8:00 to 23/04/2014 12:00)
我应该可以查询4种类型的约会
nr 1:2014年4月19日至2014年4月22日的预约(开始于选择之前,在选择之内结束)
nr2:从2014年4月22日开始预约2014年4月22日(开始在选择范围内并在选择范围内结束)
nr3:从2014年4月22日到2014年4月25日的预约(开始在选择范围内并在选择后结束)
nr4:2014年4月19日至2014年4月24日的预约(开始时间选择之前,选择后结束)
(我希望这有道理......并且可以理解)
此刻我有以下查询
Hellow everyone!
I have a problem with a LINQ query and I don't see the problem.
The Case:
I have to select all appointments between 2 dates. (ex 21/04/2014 8:00 to 23/04/2014 12:00)
I should be possible to query 4 types of appointments
nr 1: an appointment from 19/04/2014 to 22/04/2014 (start is before selection and ends within selection)
nr2: an appointment from 22/04/2014 to 22/04/2014 (start is within selection and ends within selection)
nr3: an appointment from 22/04/2014 to 25/04/2014 (start is within selection and ends after selection)
nr4: an appointment from 19/04/2014 to 24/04/2014 (start is before selection and ends after selection)
(I hope this makes sense... and understandable )
at this moment i have following query
var madeReservations = from r in reservationRepo.Query<Reservation>() //standard query
where (r.StartUsage <= _reservation.StartUsage && r.EndUsage >= _reservation.EndUsage)
|| (r.StartUsage <= _reservation.EndUsage && r.EndUsage >= _reservation.EndUsage)
|| (r.StartUsage >= _reservation.StartUsage && r.EndUsage <= _reservation.EndUsage)
|| (r.StartUsage <= _reservation.StartUsage && r.EndUsage >= _reservation.EndUsage)
select r;
_reservation是选定的日期和预订都是预订的...
我的代码有效,但是当我只选择一天(_reservation)时,不会返回任何内容...
有没有人看到这个问题?
提前感谢!!
ps抱歉我的英语不好
the _reservation is the selected date and Reservation is all te made reservations...
My code works but when I only select one day (_reservation) nothing is returned...
Does anyone see the problem??
thanks in advance!!
ps sorry for my bad English
我不确定这会有所帮助,但你应该能够简化为:r.StartUsage< _reservation.EndUsage&& r.EndUsage> _reservation.StartUsage
I'm not sure this will help, but you should be able to simplify that to:r.StartUsage < _reservation.EndUsage && r.EndUsage > _reservation.StartUsage
EndUseage设置不正确=>我已将此更改为当天的最后一个可能时间。
The EndUseage was set incorrectly => I have change this to the last possible time of that day.