我的任务是编写一个方法,该方法计算以给定开始日期时间和超时时间(以分钟为单位)超时应发生的日期时间。计算在特定时间段内暂停的超时
但是,超时只能在某些日子的特定时间内“打勾”,这是由非打勾开始日期时间,非打勾日期时间和打开日期清单确定的。
例如,给定下列:
- 开始日期时间:星期五21/02/2014 15:00
- 超时 720分钟(12小时)
- 打开天:周一,周二,周三,周四,周五
- 非勾号开始时间:09:00
- 非蜱停止时间:18:30
计算的超时日期时间应该是星期一24/02/2014 17:30(因为它没有在周六和周日打勾)。
我正在用C#编写它,但它的技术语言是不可知的。
有没有一种“优雅”的方式来做到这一点?或者它仅仅是一个循环和添加额外时间的情况,它确定超时应该停止滴答滴答?
将它定义为只在某些时段倒计时的倒计时,而不是在其他时段计数的倒计时是否更有意义? – Bobson
可能,但它不是一直运行的东西。它每5分钟醒来一次,并根据这个“超时”日期时间是否已经过去计算是否需要做任何事情。 – w69rdy
我从来没有尝试过这样做,但你可能想看看在['Calendar'](http://msdn.microsoft.com/zh-cn/library/system.globalization.calendar%28v=vs.110%29.aspx)类中,并为您的目的编写自定义日历。 – Bobson