Как получить предыдущую дату месяца в asp.net - программирование
Подтвердить что ты не робот

Как получить предыдущую дату месяца в asp.net

Мне нужно получить предыдущие месяцы в asp.net, что означает, что если текущая дата 5/2/2013, то я хочу отобразить предыдущую дату как 5/1/2013. Как это решить?

4b9b3361

Ответ 1

Попробуйте следующее:

DateTime d = DateTime.Now;
d = d.AddMonths(-1);

Ответ 2

Решение состоит в том, чтобы вычесть 1 месяц:

DateTime.Now.AddMonths(-1)

Или, если не просто создать объект datetime с нуля:

var previousDate = DateTime.Now.AddMonth(-1);

var date = new DateTime(previousDate.Year, previousDate.Month, DateTime.Now.Day);

на этот раз вам гарантируется, что год и месяц верны, и день остается прежним. (хотя это не безопасный алгоритм из-за таких случаев, как 30 марта, а предыдущая дата должна быть 28/29 февраля, так что лучше пойдите с первой оценкой вычитания месяца)

Ответ 3

Если у вас уже есть дата в формате строки

String strDate = "5/1/2013";
DateTime dateTime = DateTime.ParseExact(strDate, "dd/MM/yyyy", CultureInfo.InvariantCulture);
dateTime = dateTime.AddMonths(-1);

else, если у вас есть объект DateTime, просто назовите его AddMonths(-1).

Ответ 4

Вы можете попробовать следующее:

DateTime dt = DateTime.UtcNow.AddHours(6);
var thisYear = new DateTime(dt.Year, dt.Month-1, dt.Day);