C# 获取一年中每月月初和月末时间
public List<MoTime> GetMonthData()
{
var dataList = new List<MoTime>();
DateTime dateTime = DateTime.Now;
var currentMonth = dateTime.Month;
for (int i = 1; i <= 12; i++)
{
MoTime time = new MoTime();
if (currentMonth > i)
{
int count = currentMonth-i;
DateTime startMonth = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-count);
DateTime endMonth = startMonth.AddMonths(1).AddDays(-1);
time.monthStart = startMonth.ToShortDateString();
time.monthEnd = endMonth.ToShortDateString();
}
if (currentMonth == i)
{
DateTime startMonth = dateTime.AddDays(1 - dateTime.Day);
DateTime endMonth = startMonth.AddMonths(1).AddDays(-1);
time.monthStart = startMonth.ToShortDateString();
time.monthEnd = endMonth.ToShortDateString();
}
if (currentMonth < i)
{
int count = i - currentMonth;
DateTime startMonth = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(count);
DateTime endMonth = startMonth.AddMonths(1).AddDays(-1);
time.monthStart = startMonth.ToShortDateString();
time.monthEnd = endMonth.ToShortDateString();
}
dataList.Add(time);
}
return dataList;
}