рассчитать количество рабочих дней в текущем месяце, исключая воскресенье в приложении Windows в .net - PullRequest
0 голосов
/ 02 декабря 2010

для расчета количества рабочих дней в текущем месяце, исключая воскресенье в приложении Windows в .net.Пожалуйста, кто-нибудь сделает помощь как можно скорее ..

Ответы [ 2 ]

1 голос
/ 02 декабря 2010

Это вычислит число не в воскресенье за ​​месяц (пример показывает текущий месяц).

            var daysThisMonthThatAreNotSundays =
            Enumerable.Range(1, DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month)).Where(
                d => new DateTime(DateTime.Now.Year, DateTime.Now.Month, d).DayOfWeek != DayOfWeek.Sunday).Count();
0 голосов
/ 02 декабря 2010

Идея состоит в том, чтобы исключить нерабочие дни.Вот базовый пример:

// define non working days of week
var nonWorkingDaysOfWeek = new List<DayOfWeek>
   {
       DayOfWeek.Sunday // hard-coded for example
   };

// define specific non-working dates
var holidays = new List<DateTime>
   {
       new DateTime(2010, 12, 25) // hard-coded for example
   };

// tally the working days
var currentYear = 2010; // hard-coded for example
var currentMonth = 12; // hard-coded for example
var daysInCurrentMonth = DateTime.DaysInMonth(currentYear, currentMonth);
var numberOfWorkingDays = 0;
for (var day = 1; day <= daysInCurrentMonth; day++)
{
    var date = new DateTime(currentYear, currentMonth, day);
    if (!nonWorkingDaysOfWeek.Contains(date.DayOfWeek) && !holidays.Contains(date))
    {
        numberOfWorkingDays++;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...