我正在尝试创建一个函数,该函数返回日期范围中从特定日期开始的连续日期数。
范例:
开始日期:2022年9月1日
日期范围:2022年9月1日、2022年9月2日、2022年9月3日、2022年9月4日、2022年9月7日
在这种情况下,我所寻找的函数将返回4。
假设日期可以是无序的,并且可以滚动到下一个月,因此对于StartDate 9/29/2022:
2022年9月29日、2022年9月30日、2022年10月1日、2022年10月4日将返回3。
我知道我可以从特定的日期开始遍历日期,并检查连续的天数,但我想知道是否有一种干净的方法可以用Linq完成这一任务。
5条答案
按热度按时间kninwzqo1#
这是我能想到的最干净的解决方案...
输出为:2022年9月1日0:00:00 2022年9月2日0:00:00 2022年9月3日0:00:00 2022年9月4日0:00:00
如果你想要计数,你可以调用.Count()对结果或者只是修改方法......应该很容易。
jq6vz3qz2#
要计算日期范围内连续日期的数量:
输出量:
u4vypkhs3#
使用循环可能是最简洁的方法。我会使用如下代码:
ej83mcc04#
另一种使用循环的方法。(我同意其他人的说法,循环比使用Linq完成此任务更干净。)
agyaoht75#