如何获取当前系统时间的周一和周五

解决方案 »

  1.   

    你是要判断是否周一周五吧?
    DateTime.Now.DayOfWeek == DayOfWeek.Monday/Friday
      

  2.   

    for (int i=0; i<7; i++)
    {
    Console.WriteLine(DateTime.Today.AddDays((i-(int)DateTime.Today.DayOfWeek)).ToShortDateString());
    }可以得到从周日到周六整整一周的日期
    要是从周一到周五就
    for (int i=1; i<6; i++)...
      

  3.   

    同意biliboy(我郁闷) 
    DateTime.Now.DayOfWeek == DayOfWeek.Monday/Friday
      

  4.   

    public static void ConvertDateToWeek(DateTime date,out DateTime firstdate,out DateTime lastdate)
    {
    DateTime first=System.DateTime.Now;
    DateTime last=System.DateTime.Now;
    switch (date.DayOfWeek)
    {
    case System.DayOfWeek.Monday:
    first=date.AddDays(-1);
    last=date.AddDays(5);
    break;
    case System.DayOfWeek.Tuesday:
    first=date.AddDays(-2);
    last=date.AddDays(4);
    break;
    case System.DayOfWeek.Wednesday:
    first=date.AddDays(-3);
    last=date.AddDays(3);
    break;
    case System.DayOfWeek.Thursday:
    first=date.AddDays(-4);
    last=date.AddDays(2);
    break;
    case System.DayOfWeek.Friday:
    first=date.AddDays(-5);
    last=date.AddDays(1);
    break;
    case System.DayOfWeek.Saturday:
    first=date.AddDays(-6);
    last=date;
    break;
    case System.DayOfWeek.Sunday:
    first=date;
    last=date.AddDays(6);
    break;
    }
    firstdate=first;
    lastdate=last;
    }
      

  5.   

    string str=string.Empty;
    for(int i=0;i<7;i++)
    {
    switch (i)
    {
    case 0: str=System.DayOfWeek.Sunday.ToString();
    weekday=CalendarBLLFacade.FormatDay(Convert.ToDateTime(firstdate));
    break;
    case 1:
    str=System.DayOfWeek.Monday.ToString();
    weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(1));
    break;
    case 2:
    str=System.DayOfWeek.Tuesday.ToString();
    weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(2));
    break;
    case 3:
    str=System.DayOfWeek.Wednesday.ToString();
    weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(3));
    break;
    case 4:
    str=System.DayOfWeek.Thursday.ToString();
    weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(4));
    break;
    case 5:
    str=System.DayOfWeek.Friday.ToString();
    weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(5));
    break;
    case 6:
    str=System.DayOfWeek.Saturday.ToString();
    weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(6));
    break;
    }
    DataRow dr=ds.Tables[0].NewRow();
    ds.Tables[0].Rows.InsertAt(dr,i);
    ds.Tables[0].Rows[i]["Week"]=str;
    ds.Tables[0].Rows[i]["weekday"]=weekday;
    }
      

  6.   


    System.DateTime dtNow = System.DateTime.Now;
    System.TimeSpan tsMon = new TimeSpan( (int)(dtNow.DayOfWeek - System.DayOfWeek.Monday),0,0,0);
    System.TimeSpan tsFri = new TimeSpan( (int)(System.DayOfWeek.Friday - dtNow.DayOfWeek),0,0,0); System.Console.WriteLine ( "Monday is " + (dtNow - tsMon).ToString() );
    System.Console.WriteLine ( "Today is " + dtNow.ToString() );
    System.Console.WriteLine ( "Today is " + (dtNow + tsFri).ToString() );
      

  7.   

    用存储过程实现:
    CREATE procedure getFirstLastWeekDay
    @currentDay datetime,--当前日期
    @firstDay datetime output ,--当前日期所在周的第一个工作日(周一)
    @lastDay datetime output --当前日期所在周的最后一个工作日(周五)
    asset datefirst 1 --设置一周的第一天是周一select @firstDay=dateadd(dd,datediff(dd,'1900-01-01',@currentDay) - datepart(dw , @currentDay) + 1 , '1900-01-01')select @lastDay=dateadd(dd,datediff(dd,'1900-01-01',@currentDay)+(5-datepart(dw,@currentDay)),'1900-01-01')print @firstDay
    print @lastday
    GO
      

  8.   

    int t = (int)DateTime.Now.DayOfWeek;
    DateTime moday = DateTime.Now.AddDays(1-t);
    DateTime friday = DateTime.Now.AddDays(5-t);
    DateTime now = DateTime.Now;