多个日期范围并检查它是否是连续的。 c#MVC

时间:2016-10-26 14:42:08

标签: c# asp.net

我们有这个项目,其中一个业务要求是允许客户输入多个日期范围,并检查各个日期是否顺序/连续或不是其他日期。

当量

INPUT

startdate - enddate

2016/10/24 - 2016年10月24日

2016/10/26 - 2016年10月28日

输出

2016/10/24 - 2016年10月24日 - 没有顺序

2016/10/26 - 2016/10/26 - SEQUENTIAL

2016/10/27 - 2016/10/27 - SEQUENTIAL

2016/10/28 - 2016/10/28 - SEQUENTIAL

现在我正在玩这个解决方案 Check if date range is sequential in c#? 但我希望我能找到一个更好的解决方案,如何正确地做到这一点。

谢谢你,祝你有个美好的一天!

1 个答案:

答案 0 :(得分:1)

如果通过"顺序"我们的意思是第二个日期是第一个日期之后的第二天,然后我们可以执行以下操作:

private bool CheckSequential(DateTime date1, DateTime date2)
{
    // strips off time portion
    var d1 = date1.Date;
    var d2 = date2.Date;

    // add 1 to first date
    d1 = d1.AddDays(1);

    // compare them
    if(DateTime.Compare(d1, d2) == 0)
       return true;
    else
       return false;
}