首页 > 解决方案 > 检查日期是否相隔超过 1 年

问题描述

我正在尝试检查两个日期的总和是否超过 1 年。以下是我正在使用的代码,但此代码接受 1 年。我认为这是错误的。

public bool CheckDate(DateTime Date1, DateTime Date2)
{
    DateTime BaseTime = new DateTime(1, 1, 1);
    TimeSpan span = Date2- Date1;
    int years = (BaseTime + span).Year - 1;

    if (years >= 1)
        return true;
    else
        return false;
}

有没有办法让它算作天并考虑闰年?

标签: c#datetime

解决方案


您可以像这样简单地添加一年并比较值。

public bool CheckDate(DateTime Date1, DateTime Date2)
{
    return (Date2.AddYears(1) > Date1);
}

推荐阅读