代码如下:
#region得到一周的周一和周日的日期
///<summary>
///计算本周的周一日期
///</summary>
///<returns></returns>
publicstaticDateTimeGetMondayDate()
{
returnGetMondayDate(DateTime.Now);
}
///<summary>
///计算本周周日的日期
///</summary>
///<returns></returns>
publicstaticDateTimeGetSundayDate()
{
returnGetSundayDate(DateTime.Now);
}
///<summary>
///计算某日起始日期(礼拜一的日期)
///</summary>
///<paramname="someDate">该周中任意一天</param>
///<returns>返回礼拜一日期,后面的具体时、分、秒和传入值相等</returns>
publicstaticDateTimeGetMondayDate(DateTimesomeDate)
{
inti=someDate.DayOfWeek-DayOfWeek.Monday;
if(i==-1)i=6;//i值>=0,因为枚举原因,Sunday排在最前,此时Sunday-Monday=-1,必须+7=6。
TimeSpants=newTimeSpan(i,0,0,0);
returnsomeDate.Subtract(ts);
}
///<summary>
///计算某日结束日期(礼拜日的日期)
///</summary>
///<paramname="someDate">该周中任意一天</param>
///<returns>返回礼拜日日期,后面的具体时、分、秒和传入值相等</returns>
publicstaticDateTimeGetSundayDate(DateTimesomeDate)
{
inti=someDate.DayOfWeek-DayOfWeek.Sunday;
if(i!=0)i=7-i;//因为枚举原因,Sunday排在最前,相减间隔要被7减。
TimeSpants=newTimeSpan(i,0,0,0);
returnsomeDate.Add(ts);
}
#endregion
|