如何获得当前日期的3天,不应该是周末

时间:2017-03-30 18:35:34

标签: c#

如何获得当前日期的3天,不应该在周末(周六/周日)

假设我选择日期为03/28/2017。它应显示日期为03/23/2017。它不应该采取坐/太阳。

dto.ProcessEndDate.AddDays(-3);

1 个答案:

答案 0 :(得分:5)

此代码假定如果新日期属于周末,则会在之前的星期五返回。

public static DateTime GetDateExcludeWeekends(DateTime date, int index)
{
    var newDate = date.AddDays(-index);

    if(newDate.DayOfWeek == DayOfWeek.Sunday)
    {
        return newDate.AddDays(-2);
    }

    if(newDate.DayOfWeek == DayOfWeek.Saturday)
    {
        return newDate.AddDays(-1);
    }

    return DateTime.Now;
}

您可以调整逻辑,但主要是查看DayOfWeek类的DateTime枚举属性。