Я хочу вычислить номер недели для данной даты.
DateTime date = Convert.ToDateTime("31.12.2001");
DateTimeFormatInfo dfi = DateTimeFormatInfo.CurrentInfo;
System.Globalization.Calendar cal = dfi.Calendar;
int weekOfYear = cal.GetWeekOfYear(date, CalendarWeekRule.FirstFourDayWeek,
dfi.FirstDayOfWeek);
В моем DateTimeFormatInfo первый день недели - понедельник.Я хочу использовать правило четырех дней, означающее, что неделя относится к году, в котором лежит большинство ее дней.31 декабря 2001 года - понедельник, и он должен быть на первой неделе 2002 года. Однако weekOfYear возвращается как 53.
Кто-то знает, что не так?