Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在C中的两个特定日期时间截止日期前的最后3周#_C#_Datetime_Week Number - Fatal编程技术网

C# 在C中的两个特定日期时间截止日期前的最后3周#

C# 在C中的两个特定日期时间截止日期前的最后3周#,c#,datetime,week-number,C#,Datetime,Week Number,我有两个日期作为开始日期和结束日期。我需要在我设定的结束日期/截止日期前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(timePa

我有两个日期作为开始日期和结束日期。我需要在我设定的结束日期/截止日期前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
}
var start=DateTime.Now;
var end=新日期时间(2016年10月25日);
var timeParts=StartEndDate.Split(新字符[1]{':'});
var eventstartDate=新日期时间(start.Year、start.Month、start.Day、,
int.Parse(timeParts[0])、int.Parse(timeParts[1])、int.Parse(timeParts[2]);
var eventEnDate=新日期时间(年底、月底、日、,
int.Parse(timeParts[0])、int.Parse(timeParts[1])、int.Parse(timeParts[2]);
TimeSpan ts=eventEnDate-eventstartDate;
整数总天数=ts天;
int totalWeeks=总天数/7;
//每个循环增加7天,直到结束日期
for(DateTime ds=start;ds
3周后您的结束日期为21天

var endDateMinusThreeWeeks = end.AddDays(-21);

那么,您的问题是什么?如果您的开始日期晚于(结束日期前21天)该怎么办?这是有效的方案吗?我的意思是说,如果你的开始日期和结束日期之间的差异小于21天,你会怎么做?@VinaySinha我们将有一套规则,至少有12周的时间来创建一个活动。我们将在死亡线前3周开始每周发送提醒,好的,那么@Pheonx的答案是正确的