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

use*_*181 -3 c#

我怎样才能获得当前日期的3天,不应该在周末(周六/周日)

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

dto.ProcessEndDate.AddDays(-3);
Run Code Online (Sandbox Code Playgroud)

mac*_*ura 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;
}
Run Code Online (Sandbox Code Playgroud)

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