事件的周期性
本文关键字:周期性 事件 | 更新日期: 2023-09-27 18:26:00
例如,我们每3个月举办一次活动。事件具有DateStart、DataEnd和Periodicity。
如果事件将在特定日期发生,请帮助我编写返回true/false的方法。
public bool MonthPeriodicityChecker (DateTime start, DateTime end, DateTime dateCheck, int periodicity)
{
}
例如,记录有:
start = 02/23/2012 22:00:00;
end = 12/31/2012 23:30:00;
periodicity = 3;
当当前月份=二月、五月、八月、十一月时,方法必须返回true。
谢谢。
代码非常简单:
var someDate = DateTime.Now; // could be any date set some other way
if(someDate > end) return false;
var checkDate = start;
while(checkDate < end)
{
if(checkDate.Month == someDate.Month && checkDate.Year == someDate.Year)
return true;
checkDate = checkDate.AddMonths(periodicity);
}
return false;
你所要做的就是确保someDate
没有超过end
,并且start
和someDate
之间的月差可以被周期整除。