我必须找到上个月(11月)的最后日期和之前的一个月(10月) 我使用了以下代码:
DateTime today = DateTime.Today;
DateTime endOfLastMonth = new DateTime(today.Year, today.Month - 1, 1).AddMonths(1).AddDays(-1);
DateTime endOfLastLastMonth = new DateTime(today.Year, today.Month - 2, 1).AddMonths(1).AddDays(-1);
代码适用于今天但在1月份代码失败,因为它将月份部分提供为0和-1。
请让我知道怎么做。
对于jan月,应该说11月31日和11月30日。
答案 0 :(得分:18)
查找上个月最后一天的最简单方法是找到当月的第一个日(始终有效),然后减去一天。然后在上个月做同样的事情。
DateTime startOfMonth = new DateTime(today.Year, today.Month, 1);
DateTime endOfPreviousMonth = startOfMonth.AddDays(-1);
DateTime endOfPreviousPreviousMonth = startOfMonth.AddMonths(-1).AddDays(-1);