2010-12-02 2 views

Répondre

0

L'idée est d'exclure les jours chômés. Voici un exemple de base:

// 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++; 
    } 
} 
1

Cela calculer le nombre de non de dimanche dans un mois (exemple montre mois en cours).

  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

+1 Pour l'utilisation de 'Enumerable.Range' –

Questions connexes