我需要弄清楚当前日期是否是一个月中的最后 3 个工作日之一有没有更简洁的方法来做到这一点,而不仅仅是一堆条件逻辑,例如如果今天是工作日 > 如果添加 3 天是周末或下个月
1 回答
翻翻过去那场雪
TA贡献2065条经验 获得超13个赞
编写一个方法来确定最近 3 个工作日并检查给定日期是否是其中的一部分
public static List<DateTime> GetLastWorkingDays(DateTime date)
{
List<DateTime> result = new List<DateTime>();
date = new DateTime(date.Year, date.Month, 1).AddMonths(1).AddDays(-1);
while(result.Count < 3)
{
// > 0 to exclude sunday, < 6 to exclude saturday
if((int)date.DayOfWeek > 0 && (int)date.DayOfWeek < 6)
{
result.Add(date);
}
date = date.AddDays(-1);
}
return result;
}
Contains() 在您的结果中搜索
bool valid = GetLastWorkingDays(date).Contains(date);
- 1 回答
- 0 关注
- 314 浏览
添加回答
举报
0/150
提交
取消