Ответ 1
DateTime now = DateTime.Now;
var startDate = new DateTime(now.Year, now.Month, 1);
var endDate = startDate.AddMonths(1).AddDays(-1);
У меня есть 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);
Это должно дать вам то, что вам нужно.
Попробуйте этот код, он уже построен в С#
int lastDay = DateTime.DaysInMonth (2014, 2);
и первый день всегда 1.
Удачи!
Вдохновленный Крисом Шао ответом, я создал функции для двух значений:
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);
}