System.DateTime.Now()当前时间//前一天的日期
DateTime dt=DateTime.Today.AddDays(-1);
DateTime.Today.AddDays(1);后一天

解决方案 »

  1.   

    static void Main(string[] args)
    {
    string s = "2003-08-17";
    DateTime dt = DateTime.Parse(s);
    ReturnMonday(dt);
    }
    ...
    //@param:DateTime dt
    //@function:return Monday in dt week 
    private static void ReturnMonday(DateTime dt)
    {
    string week = dt.DayOfWeek.ToString();
    DateTime Monday;
    Monday = System.DateTime.Now;
    switch(week)
    {
    case "Monday":
    Monday = dt;
    break;
    case "Tuesday":
    Monday = dt.AddDays(-1);
    break;
    case "Wednesday":
    Monday = dt.AddDays(-2);
    break;
    case "Thursday":
    Monday = dt.AddDays(-3);
    break;
    case "Friday":
    Monday = dt.AddDays(-4);
    break;
    case "Saturday ":
    Monday = dt.AddDays(-5);
    break;
    case "Sunday":
    Monday = dt.AddDays(-6);
    break;
    default:break;
    }
    Console.Write(Monday);
    }
    //getting Sunday is the same method as getting Monday
      

  2.   

    如果一周的开始是星期日,那么:
    DateTime now = DateTime.Now;
    int day = (int) now.DayOfWeek;
    DateTime sunday = now.Add(-day);//星期日
    DateTime monday = sunday.Add(1);//星期一
      

  3.   

    方法用错了:
    DateTime sunday = now.AddDays(-day);//星期日
    DateTime monday = sunday.AddDays(1);//星期一