Метод DateOnly.AddMonths
Метод AddMonths учитывает длину
месяцев. 31 января плюс месяц
даёт последний день февраля, а не
30 календарных дней. Сутки
добавляют
AddDays.
Синтаксис
DateOnly later = dateOnly.AddMonths(1);
Пример
Давайте прибавить месяц к
31 января 2020:
using System;
class Program
{
static void Main()
{
var date = new DateOnly(2020, 1, 31);
DateOnly res = date.AddMonths(1);
Console.WriteLine(res.Day);
Console.WriteLine(res.Month);
}
}
Результат выполнения кода:
29
2
Пример
Давайте убедиться, что исходная дата не изменилась:
using System;
class Program
{
static void Main()
{
var date = new DateOnly(2020, 1, 2);
date.AddMonths(3);
Console.WriteLine(date.Month);
}
}
Результат выполнения кода:
1
Пример
Давайте сдвинуть 1 марта
на месяц назад:
using System;
class Program
{
static void Main()
{
var date = new DateOnly(2020, 3, 1);
DateOnly res = date.AddMonths(-1);
Console.WriteLine(res.Month);
Console.WriteLine(res.Day);
}
}
Результат выполнения кода:
2
1
Смотрите также
-
AddYears,
сдвиг по годам -
AddDays,
сдвиг по дням -
DateTime.AddDays,
DateTimeцеликом -
DateTimeOffset,
момент со смещением