#c#
#c#
Вопрос:
У меня есть запланированное событие, которое я хочу запускать на каждый конкретный день месяца с заданной датой начала. Итак, дата начала, например, 27.06.2019 — четверг. Я хочу запустить следующее расписание на четверг, 25.07.2019, до даты окончания, например, 30.09.2021
public class BusinessWeekDays
{
public DateTime Monday;
public DateTime Sunday;
}
static void Main(string[] args)
{
var StartDateMonth = DateTime.Parse("06/27/2019");
var SeriesEndDate = DateTime.Parse("09/30/2019");
var months = new List<BusinessWeekDays>();
var m = StartDateMonth.Day == 1
? StartDateMonth
: StartDateMonth.AddDays(-(StartDateMonth.Day -
1)).AddMonths( 1);
m = m.Date;
for (;;)
{
var e = m.AddMonths( 1).AddDays(-1);
if (e.Date > SeriesEndDate.Date) break;
if (BusinessDays(StartDateMonth, SeriesEndDate) != 0)
{
months.Add(new BusinessWeekDays
{
Monday = m, Sunday
= e
});
m = m.AddMonths( 1);
}
}
Комментарии:
1. Вы пытаетесь получить что-то, что выполняется в n-й (некоторый) день каждого месяца?
2. Что вы хотите сделать с 29 февраля?
3. quartz-scheduler.net/documentation/quartz-2.x/tutorial/…
4. Мне не нужен schedular. Я могу сделать это по расписанию Windows. Я просто хочу рассчитать повторяющиеся даты и вставить все эти даты в базу данных. Что я хочу, так это, например, дата начала 27.06.2019 — четверг. следующий месяц Июль 2019 должен закончиться в четверг, август 2019 — в четверг до окончания серии 30.09.2021
5. По сути, я хочу, чтобы это был последний четверг каждого месяца между датами начала и окончания