我的目标是计算两个日期之间的差值,然后将这段时间加上原始开始日期的天数。
DateTime originalStart = new DateTime(2015, 1, 1);
DateTime newDate = originalStart.AddDays((endDate - startDate).TotalDays);
例如,使用以下参数:
原始开始日期:2015年1月1日 开始日期:2016年1月1日 结束日期:2017年1月1日
新日期应为:2016年1月1日(开始和结束之间的差异是1年,因此我们将这一年加到原始开始日期)
我的问题是如果闰年包含在endDate和startDate之间的日期差异中,那么当我添加这些天数到originalStart时,我得到像2016年1月2日这样的日期。
有什么办法可以避免闰年,以确保如果2016年1月1日和2017年1月1日之间的差异被四舍五入,则只需将一年完全添加到originalStart中,而不是由于闰年多加了一天。