#c_sharp
Как зная сегодняшнюю дату, узнать даты всех дней этой недели в c#? Также требуется получить даты всех дней месяца.
Ответы
Ответ 1
DateTime today = DateTime.Today; //Высчитываем начало недели var weekStart = today.AddDays(-(int)today.DayOfWeek + 1); //Высчитываем начало месяца var monthStart = today.AddDays(-today.Day + 1); var week = Enumerable.Range(0, 7).Select(count => weekStart.AddDays(count)).ToList(); var month = Enumerable.Range(0, DateTime.DaysInMonth(today.Year, today.Month)) .Select(count => monthStart.AddDays(count)).ToList(); В случае использования разных культур замените расчет начала недели на такой var cultureStart = CultureInfo.CurrentCulture.DateTimeFormat.FirstDayOfWeek; var weekStart = today; while (weekStart.DayOfWeek != cultureStart) weekStart = weekStart.AddDays(-1);
Комментариев нет:
Отправить комментарий