C# 求本周一、上周一、上周日的日期

最近网站要统计和对比本周与上周 本月与上月 等数据,涉及DateTime的应用。
/// <summary>
/// 获取本周一的DateTime
/// </summary>
/// <param name="dt"></param>
/// <returns></returns>
        static DateTime GetMondayInWeek(DateTime dt)
        {
            int week = (int)dt.DayOfWeek;

            if (week == 0)
            {
                week = 7;
            }

            if (week == 1)
            {
                return dt;
            }

            else
            {
                DateTime result = dt.AddDays(-(week - 1));
                return result;
            }

        }


 /// <summary>
        /// 获取上周一的DateTime
        /// </summary>
        /// <param name="dt"></param>
        /// <returns></returns>
        static DateTime GetLastMonday(DateTime dt)
        {
            return GetMondayInWeek(dt).Date.AddDays(-7);
        }

        /// <summary>
        /// 获取上周日的日期
        /// </summary>
        /// <param name="dt"></param>
        /// <returns></returns>
        static DateTime GetLastSunday(DateTime dt)
        {
            return GetMondayInWeek(dt).Date.AddDays(-1);
        }

转载于:https://my.oschina.net/YkWorm/blog/103023

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值