获取当月的第一天和最后一天

我有2个datepicker用于开始日期结束日期

我怎样才能获得当月的第一天和最后一天

rdpStartDate.SelectedDate = DateTime.Now; rdpEndDate.SelectedDate = DateTime.Now; 

 DateTime now = DateTime.Now; var startDate = new DateTime(now.Year, now.Month, 1); var endDate = startDate.AddMonths(1).AddDays(-1); 
 var now = DateTime.Now; var first = new DateTime(now.Year, now.Month, 1); var last = first.AddMonths(1).AddDays(-1); 

您还可以使用DateTime.DaysInMonth方法:

 var last = new DateTime(now.Year, now.Month, DateTime.DaysInMonth(now.Year, now.Month)); 
 var myDate = DateTime.Now; var startOfMonth = new DateTime(myDate.Year, myDate.Month, 1); var endOfMonth = startOfMonth.AddMonths(1).AddDays(-1); 

这应该会给你你需要的东西。

试试这个已经用c#构建的代码

 int lastDay = DateTime.DaysInMonth (2014, 2); 

第一天总是1。

祝好运!

受Chris Shao的回答启发,我为这两个值创建了函数:

 private DateTime FirstDayOfMonth() { return new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1); } private DateTime LastDayOfMonth() { return new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1).AddMonths(1).AddDays(-1); } 
 string firstdayofyear = new DateTime(DateTime.Now.Year, 1, 1).ToString("MM-dd-yyyy"); string lastdayofyear = new DateTime(DateTime.Now.Year, 12, 31).ToString("MM-dd-yyyy"); string firstdayofmonth = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1).ToString("MM-dd-yyyy"); string lastdayofmonth = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1).AddMonths(1).AddDays(-1).ToString("MM-dd-yyyy");