DateTime.AddMonths(Int32) Metodo

Definizione

Restituisce un nuovo oggetto DateTime che aggiunge il numero specificato di mesi al valore di questa istanza.Returns a new DateTime that adds the specified number of months to the value of this instance.

public:
 DateTime AddMonths(int months);
public DateTime AddMonths (int months);
member this.AddMonths : int -> DateTime
Public Function AddMonths (months As Integer) As DateTime

Parametri

months
Int32

Numero di mesi.A number of months. Il parametro months può essere negativo o positivo.The months parameter can be negative or positive.

Restituisce

DateTime

Oggetto il cui valore è la somma della data e dell'ora rappresentate dall'istanza e months.An object whose value is the sum of the date and time represented by this instance and months.

Eccezioni

Il valore risultante di DateTime è minore di MinValue o maggiore di MaxValue.The resulting DateTime is less than MinValue or greater than MaxValue.

-oppure--or- months è minore di -120.000 o maggiore di 120.000.months is less than -120,000 or greater than 120,000.

Esempio

Nell'esempio seguente vengono aggiunti tra zero e quindici mesi all'ultimo giorno del mese di dicembre 2015.The following example adds between zero and fifteen months to the last day of December, 2015. In questo caso, il metodo AddMonths restituisce la data dell'ultimo giorno di ogni mese e gestisce correttamente gli anni bisestili.In this case, the AddMonths method returns the date of the last day of each month, and successfully handles leap years.

using System;

public class Example
{
   public static void Main()
   {
      var dat = new DateTime(2015, 12, 31);
      for (int ctr = 0; ctr <= 15; ctr++)
         Console.WriteLine(dat.AddMonths(ctr).ToString("d"));
   }
}
// The example displays the following output:
//       12/31/2015
//       1/31/2016
//       2/29/2016
//       3/31/2016
//       4/30/2016
//       5/31/2016
//       6/30/2016
//       7/31/2016
//       8/31/2016
//       9/30/2016
//       10/31/2016
//       11/30/2016
//       12/31/2016
//       1/31/2017
//       2/28/2017
//       3/31/2017
Module Example
   Public Sub Main()
      Dim dat As Date = #12/31/2015#
      For ctr As Integer = 0 To 15
         Console.WriteLine(dat.AddMonths(ctr).ToString("d"))
      Next
   End Sub
End Module
' The example displays the following output:
'       12/31/2015
'       1/31/2016
'       2/29/2016
'       3/31/2016
'       4/30/2016
'       5/31/2016
'       6/30/2016
'       7/31/2016
'       8/31/2016
'       9/30/2016
'       10/31/2016
'       11/30/2016
'       12/31/2016
'       1/31/2017
'       2/28/2017
'       3/31/2017

Commenti

Questo metodo non modifica il valore di questo DateTime oggetto.This method does not change the value of this DateTime object. Viene invece restituito un nuovo DateTime oggetto il cui valore è il risultato di questa operazione.Instead, it returns a new DateTime object whose value is the result of this operation.

Il AddMonths metodo calcola il mese e l'anno risultante, prendendo in considerazione gli anni bisestili e il numero di giorni in un mese, quindi modifica la parte relativa al giorno dell' DateTime oggetto risultante.The AddMonths method calculates the resulting month and year, taking into account leap years and the number of days in a month, then adjusts the day part of the resulting DateTime object. Se il giorno risultante non è un giorno valido nel mese risultante, viene usato l'ultimo giorno valido del mese risultante.If the resulting day is not a valid day in the resulting month, the last valid day of the resulting month is used. Ad esempio, il 31 marzo + 1 mese = 30 aprile e il 31 marzo 1 mese = 28 febbraio per un anno non bisestile e 29 febbraio per un anno bisestile.For example, March 31st + 1 month = April 30th, and March 31st - 1 month = February 28 for a non-leap year and February 29 for a leap year.

La parte relativa all'ora del giorno dell'oggetto risultante DateTime rimane identica a questa istanza.The time-of-day part of the resulting DateTime object remains the same as this instance.

Si applica a