AZHAR SAYYAD Ответов: 4

Как найти номер последнего месяца в C#


привет

я хочу просто восстановить номер последнего месяца в c#, но я получу только текущий месяц.

Что я уже пробовал:

строки MonthNumber = Датавремя.Сейчас.Месяц.Метод toString();
я использовал приведенный выше код он даст мне номер текущего месяца я хочу номер последнего месяца
тоже пробовал этот месяц Датавремя = Датавремя.Сейчас.AddMonths(-1);
но это даст мне дату отверстия я просто хочу номер месяца

Philippe Mori

Нажмите клавишу F1 в Visual Studio, пока каретка включена DateTime и прочтите документацию! И еще проще, просто позвольте IntelliSense показать вам доступные свойства.

4 Ответов

Рейтинг:
34

OriginalGriff

Попробуй:

int lastMonth = DateTime.Now.AddMonths(-1).Month;


Рейтинг:
22

Ehsan Sajjad

Вам нужно получить свойство месяца как AddMonths(-1) вернется новый DateTime например, сделайте это так:

DateTime LastMonth = DateTime.Now.AddMonths(-1);
Console.WriteLine(LastMonth.Month);


Karthik_Mahalingam

5

Рейтинг:
20

Suvendu Shekhar Giri

Попробуй-

string MonthNumber = DateTime.Now.AddMonths(-1).Month.ToString(); 

Надеюсь, это поможет :)


Рейтинг:
0

Patrice T

Другой способ сделать это с помощью теста:

int MonthNumber = DateTime.Now.Month-1;
if (MonthNumber == 0)
    MonthNumber = 12; 


Еще один способ сделать это без теста:
int MonthNumber = ((DateTime.Now.Month+10)%12)+1;

Принцип
Месяцы - с 1 (январь) по 12 (декабрь).
Предыдущий месяц января-декабрь
Существует математическая функция, называемая модулем, но она основана на нуле (от 0 до 11) и не любит отрицательных значений.
К счастью, месяц-1 - это то же самое, что и месяц+11