2012-04-27 39 views
-1

我在C#.Net工作。我需要从开始日期和到目前为止。 例如:如果我选择“上周”,意味着我应该在4月15日 - 4月21日。 “2周前”是指4月8日至4月14日。同3个星期前,4个星期前等等。从上个星期的日期和日期

如何从日期和结束日期的..

+0

yes..i已经将周数​​乘以7.之后,我应该做一些逻辑...我需要一些想法... – RobinHood 2012-04-27 10:59:03

+0

这使我不知道你的尝试。为什么不编辑你的问题并添加你尝试过的代码?请详细解释你卡在哪里。 – Oded 2012-04-27 11:05:22

回答

0

我犯了一个控制台program..itz做工精细..赤出来

static void Main(string[] args) 
     { 
      Console.WriteLine("Enter week number"); 
      int week = int.Parse(Console.ReadLine()); 
      var weekStartDay = DayOfWeek.Monday; 
      int daysInAWeek = 7; 
      DateTime thisWeekStarttingDate = DateTime.Now.Subtract(new TimeSpan((int)DateTime.Now.DayOfWeek - (int)weekStartDay, 0, 0, 0)).Date; 

      DateTime fromDate = thisWeekStarttingDate.Subtract(new TimeSpan(daysInAWeek * week, 0, 0, 0)); 
      DateTime toDate = fromDate.AddDays(daysInAWeek-1); 

      Console.WriteLine("from date:" + fromDate.ToShortDateString()); 
      Console.WriteLine("to date:" + toDate.ToShortDateString()); 
      Console.ReadKey(); 
     } 
+0

你的解决方案给了我这个想法..谢谢了很多.. – RobinHood 2012-04-27 11:36:39

0
var currentWeek_StartDate = GetStartWeekDate_By_Date(DateTime.Now.Date); 

    var lastWeek_StartDate = GetStartWeekDate_By_WeekIndex(currentWeek_StartDate, -1); 
    var lastWeek_EndDate = GetEndWeekDate_By_StartWeekDate(lastWeek_StartDate); 


public static DateTime GetStartWeekDate_By_Date(DateTime date) 
{ 
    return date.AddDays(-(int)date.DayOfWeek); 
} 
public static DateTime GetEndWeekDate_By_StartWeekDate(DateTime date) 
{ 
    return date.AddDays(6); 
} 
public static DateTime GetStartWeekDate_By_WeekIndex(DateTime date, int weekIndex) 
{ 
    return date.AddDays(weekIndex * 7); 
} 
相关问题