``` Dictionary<DateTime?, int> dic = new Dictionary<DateTime?, int>();
for (DateTime? dt = t.Starttime; dt <= t.Endtime; dt = dt.Value.AddMonths(1))
{
int days = 0;
if (dt.Value.Month == t.Starttime.Month)
{
//开始日期当月最后一天 - 开始日期
days = new TimeSpan(dt.Value.AddDays(1 - dt.Value.Day).AddMonths(1).AddDays(-1).Ticks - dt.Value.Ticks).Days+1;
}
else if (dt.Value.Month== t.Endtime.Month)
{
//结束日期 - 结束日期当月第一天
days = new TimeSpan(dt.Value.Ticks - dt.Value.AddDays(1 - dt.Value.Day).Ticks).Days+1;
}
else
{
days = DateTime.DaysInMonth(dt.Value.Year, dt.Value.Month);
}
dic.Add(dt.Value.AddDays(1 - dt.Value.Day), days);
}
c# 获取时间段内所有月份,及每月有多少天
最新推荐文章于 2024-04-21 22:09:55 发布