2012-01-09 134 views
2

可能重複:
Calculate previous week's start and end dateC#前一週日期

我需要在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#中的最佳方式

感謝

+0

假設星期的開始是星期天? – 2012-01-09 10:14:04

回答

4

嘗試:

DateTime.Today.AddDays(-7); 
+0

他不希望今天7,他希望StartOfCurrentWeek-7 – 2012-01-09 10:17:47

+0

這實際上並沒有給出答案,因爲上週可能還沒有開始7天前(根據OP的例子)。 – Darbio 2012-01-09 10:17:59

+0

OP說'我需要在c#中獲得前一週的開始日期,例如。今天是1月9日......所以,我可以計算出今天7天前的日期。那裏我沒有看到任何錯誤。讓我知道如果我的理解是錯誤的 – Rahul 2012-01-09 10:20:24

11

如前所述重複的反應大概會爲你做

mondayOfLastWeek = DateTime.Now.AddDays(-(int)DateTime.Now.DayOfWeek - 6); 
sundayOfLastWeek = DateTime.Now.AddDays(-(int)DateTime.Now.DayOfWeek) 
相關問題