DateTime [Last Week, Last Month]

I need to configure last week, in the past months dropdownlist change periods

I do

        switch (DDL.SelectedIndex)
        {
            case 0:
                {
                    // last week
                    this.TextBox3.Text = DateTime. //Previos week first day
                    this.TextBox4.Text = DateTime. //Previos week last day
                } break;
            case 1:
                {
                    // last mouth
                    this.TextBox3.Text = DateTime.// Previos month first day
                    this.TextBox4.Text = DateTime.// Previos month last day
                } break;
}

So are there some ways I can select date values ​​as I want?

In addition, I have an AJAX calendar expander in text fields

thank.

+3
source share
1 answer

Something like this, I think:

int dayOfWeekNumber = (int)DateTime.Today.DayOfWeek - (int)CultureInfo.CurrentCulture.DateTimeFormat.FirstDayOfWeek;

var previosWeekFirstDay = DateTime.Today.AddDays(-7 - dayOfWeekNumber);

var previosWeekLastDay = previosWeekFirstDay.AddDays(6);

var previosMonthFirstDay = DateTime.Today.AddMonths(-1);
previosMonthFirstDay = previosMonthFirstDay.AddDays(-previosMonthFirstDay.Day + 1);

var previosMonthLastDay = previosMonthFirstDay.AddDays(DateTime.DaysInMonth(previosMonthFirstDay.Year, previosMonthFirstDay.Month) - 1);

Edited: see comment by Fredrik MΓΆrk .

+3
source

Source: https://habr.com/ru/post/1730971/


All Articles