【发布时间】:2016-02-26 10:03:22
【问题描述】:
我有两个日期作为开始日期和结束日期。我需要在我设定的结束日期/截止日期前 3 周发送提醒。
var start= DateTime.Now;
var end = new DateTime(2016, 10, 25);
var timeParts = StartEndDate.Split(new char[1] { ':' });
var eventstartDate = new DateTime(start.Year, start.Month, start.Day,
int.Parse(timeParts[0]), int.Parse(timeParts[1]), int.Parse(timeParts[2]));
var eventEnDate = new DateTime(end .Year, end .Month, end .Day,
int.Parse(timeParts[0]), int.Parse(timeParts[1]), int.Parse(timeParts[2]));
TimeSpan ts = eventEnDate - eventstartDate;
int totaldays = ts.Days;
int totalWeeks = totaldays / 7;
//Add 7 days for each loop until end date
for (DateTime ds= start; ds< eventEnDate; ds= ds.AddDays(7))
{
//DO something so to get last 3 week prior to end date to set reminder
}
【问题讨论】:
-
那么,你的问题是什么?
-
如果您的开始日期晚于(结束日期的 21 天之前)怎么办?这是有效的场景吗?我的意思是说如果你的开始日期和结束日期之间的差异小于 21 天,你会怎么做?
-
@VinaySinha 我们将制定一些规则,至少有 12 周的时间来创建活动。我们将在截止日期前 3 周开始每周发送提醒
-
好的,那么@Pheonyx 的答案是正确的
标签: c# datetime week-number