Предположим, если у меня есть диапазон дат и времени от: 2020-07-01 08:00
до 2020-07-21 10:25
, мне нужно проверить, в какой номер недели падает дата ввода. День недели - это день, в котором d1
.
DateTime d1 =
DateTime.ParseExact("2020-07-01 08:00", "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture);
DateTime d2 =
DateTime.ParseExact("2020-07-21 10:25", "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture);
List<int> weeks = new List<int>();
var Week = (int)Math.Floor((double)d1.DayOfYear / 7.0); //starting week number
for (DateTime t = d1; t < d2; t = t.AddDays(7))
{
weeks.Add(Week);
Week++;
}
Здесь будут использоваться три даты, d1 и d2 - это диапазон дат, они постоянны по умолчанию, мы не можем их изменять.
Но нам нужно найти номер недели только для третьей даты, которая будет только вводиться.
Пример: если я передаю ввод как:
Example 1: If input as `2020-07-03 08:00` the output should be returned as: Week 1
Example 2: If input as `2020-07-08 09:35` the output should be returned as: Week 2