如何循环每个月的第一个日期。
public struct stat{
public DateTime date;
}
我有List<stat>
一个日期属性。我想通过排序得到最低和最新的。第一个元素较旧,最后一个元素较新。
我可以通过 order by 轻松获得第一和第二。
我想要的是在第一个(最旧的)和最新的之间获得每个月的第一个日期。
字符串 ret = "";
List<DateTime> dates = new List<DateTime>();
int breaker = DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month);
stats = stats.OrderBy(x => x.Date).ToList();
DateTime old = stats.First().Date;
DateTime @new = stats.Last().Date;
int diffdays = @new.Subtract(old).Days;
DateTime loopd = DateTime.Now;
for (int i = 0; i < diffdays; i = i + breaker)
{
loopd = loopd.AddDays(-breaker);
dates.Add(loopd);
if (loopd < old)
Console.WriteLine("date" + old);
}
for (int j = 0; j < dates.Count; j++)
{
if (j == 0)
{
DateTime ld= dates[0];
stats.SelectMany(x => x.Date < @new && x.Date > dates[j]);
}
}