前の勤務日を取得する必要があります:
public DateTime GetPreviousWorkDay(DateTime date)
{
DateTime prevDay = date.AddDays(-1);
bool isHoliday = IsHoliday(prevDay);
while (isHoliday || prevDay.DayOfWeek == DayOfWeek.Saturday || prevDay.DayOfWeek == DayOfWeek.Sunday)
{
prevDay = prevDay.AddDays(-1);
isHoliday = IsHoliday(prevDay);
}
return prevDay;
}
この方法は安全ですか?それは無限のサイクルになることができますか?もっと簡単な方法はありますか?