Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 检查一个日期是否在一个跨度的重复之间最有效的方法是什么?_C#_Algorithm_Date - Fatal编程技术网

C# 检查一个日期是否在一个跨度的重复之间最有效的方法是什么?

C# 检查一个日期是否在一个跨度的重复之间最有效的方法是什么?,c#,algorithm,date,C#,Algorithm,Date,使用c#date类检查日期是否介于一段时间的重复之间的最有效方法是什么 例如,您的时间跨度为2009年1月1日凌晨1:00:00到2009年6月1日下午5:00,每x年、月或周等重复一次 我想检查变量datex是否在任何重复周期之间 我读过,但他所有的例子都是单日事件,而不是可以跨越多天的事件。以下条件必须成立: (时间-开始)修改周期(开始-结束) 所有变量应以相同的单位表示(例如,秒或任何您需要的精度)不幸的是,大多数涉及日期时间的周期不是恒定的(月长28-31天,年长365/366天等等)

使用c#date类检查日期是否介于一段时间的重复之间的最有效方法是什么

例如,您的时间跨度为2009年1月1日凌晨1:00:00到2009年6月1日下午5:00,每x年、月或周等重复一次

我想检查变量date
x
是否在任何重复周期之间


我读过,但他所有的例子都是单日事件,而不是可以跨越多天的事件。

以下条件必须成立:

(时间-开始)修改周期<(结束-开始)

前提是
期间>(开始-结束)


所有变量应以相同的单位表示(例如,秒或任何您需要的精度)

不幸的是,大多数涉及日期时间的周期不是恒定的(月长28-31天,年长365/366天等等)。这是一种非常简洁的方法,适用于区间之间数值恒定的距离(例如7天、30天、365天)但如果要遵循日期驱动的规则,例如“每月”、“每年”,则需要其他内容(参见我对问题的评论)。重复报告的时间是否总是在数字上相同(例如7天、30天、365天)或者它是否必须遵循日期驱动的规则,例如每月、每年?如果是后者,如果时间段为1月29日至1月31日,那么2月份会发生什么?Adam I通过让用户选择月内的一周(周一、周二等)或月内的一天(在某些情况下不会发生)来说明这一点对不起,我不明白你的意思。