【问题标题】:c# previous week start date [duplicate]c#上一周开始日期[重复]
【发布时间】:2018-11-05 17:29:20
【问题描述】:

可能重复:
Calculate previous week's start and end date

我需要在 c# 中获取前一周的开始日期 例如。今天是 1 月 9 日。 前一周的开始日期是 1 月 1 日。

我正在使用以下代码

    DayOfWeek weekStart = DayOfWeek.Sunday;
    DateTime startingDate = DateTime.Today;

    while (startingDate.DayOfWeek != weekStart)
        startingDate = startingDate.AddDays(-1);

    DateTime previousWeekStart = startingDate.AddDays(-7);

这是c#中最好的方法吗

谢谢

【问题讨论】:

  • 假设星期的开始是星期日?

标签: c#


【解决方案1】:

如前所述,副本的响应可能对你有用

mondayOfLastWeek = DateTime.Now.AddDays( -(int)DateTime.Now.DayOfWeek - 6 );
sundayOfLastWeek = DateTime.Now.AddDays(-(int)DateTime.Now.DayOfWeek)

【讨论】:

    【解决方案2】:

    试试:

    DateTime.Today.AddDays(-7);
    

    【讨论】:

    • 他不想要 Today-7,他想要 StartOfCurrentWeek-7
    • 这实际上并没有给出答案,因为上周可能还没有在 7 天前开始(根据 OP 的示例)。
    • OP 说I need to get the previous week start date in c# for eg. today is Jan 9th ... 所以,我可以计算从今天起 7 天前的日期。我看不出有什么不对的地方。如果我的理解有误,请告诉我
    • 嗨,Rahul - 根据您的回答,他并没有问一周前的日期。他在问前一周的开始日期。例如上周日在公历 - 7 天
    猜你喜欢
    • 1970-01-01
    • 2011-07-30
    • 1970-01-01
    • 1970-01-01
    • 2021-10-27
    • 1970-01-01
    • 2020-07-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多