2011-06-07 65 views
1

好吧,我不知道如何解決這個問題...我使用的是開源CMS(Umbraco),並且希望創建一個每三週輪換一次內容的宏。所以基本上我有三個文件,並且我想根據給定的開始日期每週顯示文件1,2或3(總共三週輪換)......任何建議?我吮吸在C#中使用日期!計算每週輪換計劃

我不需要比來發回1周,2或3給出的起始日期C#的功能以外的任何特殊代碼...

回答

0

這工作,雖然你可能需要調整,如果你總是希望在某一天(例如星期天)開始的幾周。

 DateTime startDate = new DateTime(2011, 1, 1).Date; 
     DateTime now = DateTime.Now.Date; 
     int days = (int)now.Subtract(startDate).TotalDays; 
     int weeks = days/7; 
     Console.WriteLine((weeks % 3) + 1); 
+0

這工作!謝謝!!! – rjbullock 2011-06-09 17:07:04

0
DateTime begin = new DateTime(2011, 03, 07); 
TimeSpan timeSpan = DateTime.Now - begin; 
switch (((int) timeSpan.TotalDays/7) % 3) 
{ 
    case 0: 
     break; 
    case 1: 
     break; 
    case 2: 
     break; 
    default: 
     throw new Exception(); 
} 

第一個「/ 7」給你一週號碼,「%3」告訴你,如果你在第一,第二或第三是。

+0

啊!我想你會不得不使用一個mod功能,但老實說,我的數學函數的知識是零。 ;-)但是,我會試試這個。感謝您的想法! – rjbullock 2011-06-09 15:39:49

+0

是的,這似乎沒有工作...給定一個開始日期5/30/11和結束日期6/12/11(通過我設置的變量),它返回0時,它應該返回1。 – rjbullock 2011-06-09 16:57:59

+0

原因想想吧...... 7%7回報0.14%7回報0.21%7回報0等等...... – rjbullock 2011-06-09 16:59:48