Feedback

C# - Anzahl der Wochentage zwischen zwei Daten ermitteln

Veröffentlicht von am 18.04.2007
(2 Bewertungen)
ermittelt die Anzahl der Wochentage zwischen zwei Daten
private int CountWeekdays(DateTime startTime, DateTime endTime)
{
    TimeSpan timeSpan = endTime - startTime;
    DateTime dateTime;
    int weekdays = 0;
    for (int i = 0; i < timeSpan.Days; i++)
    {
        dateTime = startTime.AddDays(i);
        if (IsWeekDay(dateTime))
            weekdays++;
    }
    return weekdays;
}

private bool IsWeekDay(DateTime dateTime)
{
    return ((dateTime.DayOfWeek != DayOfWeek.Saturday) && (dateTime.DayOfWeek != DayOfWeek.Sunday)
}
Abgelegt unter Wochentag, Weekday.

2 Kommentare zum Snippet

Bauer Michael schrieb am 10.09.2007:
Die Methode IsWeekDay enthält einen Bug. Statt OR muß AND verwendet werden. Korrekt wäre:


return ((dateTime.DayOfWeek != DayOfWeek.Saturday) &&
(dateTime.DayOfWeek != DayOfWeek.Sunday));


Grüße,
Michael
Jan Welker schrieb am 10.09.2007:
Stimmt, ich habe das verbessert. Ich hoffe das der unbekannte Autor nichts dagegen hat.
 

Logge dich ein, um hier zu kommentieren!