Método DateTime.AddMonths() en C#

Este método se utiliza para devolver un nuevo DateTime que agrega el número de meses especificado al valor de esta instancia.

Sintaxis:

public DateTime AddMonths (int months);

Aquí, meses es el número de meses. El parámetro meses puede ser negativo o positivo.

Valor devuelto: este método devuelve un objeto cuyo valor es la suma de la fecha y la hora representadas por esta instancia y los meses .

Excepción: este método lanzará ArgumentOutOfRangeException si el DateTime resultante es menor que MinValue o mayor que MaxValue or meses es menor que -120, 000 o mayor que 120, 000.

Los siguientes programas ilustran el uso del método mencionado anteriormente:

Ejemplo 1:

// C# program to demonstrate the
// DateTime.AddMonths(Int32) Method
using System;
  
class GFG {
  
// Main Method
public static void Main()
{
  
    // Creating a DateTime object
    DateTime d1 = new DateTime(2018, 4, 17);
  
    for (int i = 0; i <= 10; i++)
    {
  
        // using the method
        Console.WriteLine(d1.AddMonths(i).ToString("d"));
          
    }
      
    Console.WriteLine("In Leap Years:");
      
    // Creating a DateTime object
    // by taking a leap year
    // It is 31st March 2016
    DateTime d2 = new DateTime(2016, 03, 31);
      
    // taking a month value
    int m = 1;
      
    // using the method
    // Result will be 30 April 2016
    Console.WriteLine(d2.AddMonths(m).ToString("d"));
      
      
}
}

Producción:

04/17/2018
05/17/2018
06/17/2018
07/17/2018
08/17/2018
09/17/2018
10/17/2018
11/17/2018
12/17/2018
01/17/2019
02/17/2019
In Leap Years:
04/30/2016

Ejemplo 2:

// C# program to demonstrate the
// DateTime.AddMonths(Int32) Method
using System;
  
class GFG {
  
// Main Method
public static void Main()
{
  
    // Creating a DateTime object
    // taking MaxValue
    DateTime d1 = DateTime.MaxValue;
  
    // taking a month MaxValue
    int m = 12005;
  
    // using the method will 
    // give an runtime error
    // as months parameter is
    // greater than 12000
    Console.WriteLine(d1.AddMonths(m).ToString("d"));
}
}

Error de tiempo de ejecución:

Excepción no controlada:
System.ArgumentOutOfRangeException: el valor agregado o restado da como resultado una fecha y hora no representable.
Nombre del parámetro: meses

Nota:

  • Este método no cambia el valor de este objeto DateTime. En su lugar, devuelve un nuevo objeto DateTime cuyo valor es el resultado de esta operación.
  • Esto calcula el mes y el año resultantes, teniendo en cuenta los años bisiestos y la cantidad de días en un mes, luego ajusta la parte del día del objeto DateTime resultante.
  • La parte de la hora del día del objeto DateTime resultante sigue siendo la misma que esta instancia.

Referencia:

Publicación traducida automáticamente

Artículo escrito por Kirti_Mangal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *