计算每周轮换时间表

时间:2011-06-07 16:06:18

标签: c# .net asp.net

好的,我不知道如何解决这个问题...我正在使用开源CMS(Umbraco),并希望创建一个每隔三周旋转一次内容的宏。所以基本上我有三个文件,我想根据给定的开始日期每周显示文件1,2或3(总共三周轮换)...有什么建议吗?我很擅长使用C#中的日期!

除了C#函数之外,我不需要任何特定的代码,这些代码会在给定的开始日期后吐出第1,2或3周...

2 个答案:

答案 0 :(得分: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);

答案 1 :(得分: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'告诉您是否在第1,第2或第3个。