HebrewCalendar.AddMonths(DateTime, Int32) Metoda

Definicja

Zwraca wartość , DateTime która jest określoną liczbą miesięcy od określonej wartości DateTime.

public override DateTime AddMonths (DateTime time, int months);

Parametry

time
DateTime

Element DateTime , do którego ma zostać dodany monthselement .

months
Int32

liczba miesięcy do dodania.

Zwraca

Wynik dodawania DateTime określonej liczby miesięcy do określonego DateTimeelementu .

Wyjątki

DateTime Wynik jest poza obsługiwanym zakresem.

months wartość jest mniejsza niż -120 000 lub większa niż 120 000.

Przykłady

Poniższy przykład kodu przedstawia wartości kilku składników elementu DateTime w zakresie kalendarza hebrajskiego.

using System;
using System.Globalization;

public class SamplesHebrewCalendar  {

   public static void Main()  {

      // Sets a DateTime to April 3, 2002 of the Gregorian calendar.
      DateTime myDT = new DateTime( 2002, 4, 3, new GregorianCalendar() );

      // Creates an instance of the HebrewCalendar.
      HebrewCalendar myCal = new HebrewCalendar();

      // Displays the values of the DateTime.
      Console.WriteLine( "April 3, 2002 of the Gregorian calendar equals the following in the Hebrew calendar:" );
      DisplayValues( myCal, myDT );

      // Adds two years and ten months.
      myDT = myCal.AddYears( myDT, 2 );
      myDT = myCal.AddMonths( myDT, 10 );

      // Displays the values of the DateTime.
      Console.WriteLine( "After adding two years and ten months:" );
      DisplayValues( myCal, myDT );
   }

   public static void DisplayValues( Calendar myCal, DateTime myDT )  {
      Console.WriteLine( "   Era:        {0}", myCal.GetEra( myDT ) );
      Console.WriteLine( "   Year:       {0}", myCal.GetYear( myDT ) );
      Console.WriteLine( "   Month:      {0}", myCal.GetMonth( myDT ) );
      Console.WriteLine( "   DayOfYear:  {0}", myCal.GetDayOfYear( myDT ) );
      Console.WriteLine( "   DayOfMonth: {0}", myCal.GetDayOfMonth( myDT ) );
      Console.WriteLine( "   DayOfWeek:  {0}", myCal.GetDayOfWeek( myDT ) );
      Console.WriteLine();
   }
}

/*
This code produces the following output.

April 3, 2002 of the Gregorian calendar equals the following in the Hebrew calendar:
   Era:        1
   Year:       5762
   Month:      7
   DayOfYear:  198
   DayOfMonth: 21
   DayOfWeek:  Wednesday

After adding two years and ten months:
   Era:        1
   Year:       5765
   Month:      5
   DayOfYear:  138
   DayOfMonth: 21
   DayOfWeek:  Monday

*/

Uwagi

Ta implementacja HebrewCalendar klasy rozpoznaje tylko lata hebrajskie od 5343 do 5999 (od 1583 do 2239 w kalendarzu gregoriańskim).

Część dnia wynikowego DateTime wpływa, jeśli wynikowy dzień nie jest prawidłowym dniem w wynikowym miesiącu wynikowego roku. Jest on zmieniany na ostatni prawidłowy dzień w wynikowym miesiącu wynikowego roku. Wpływ na część roku wynikowej DateTime ma wpływ, jeśli wynikowy miesiąc znajduje się poza rokiem określonego DateTime. Ta implementacja obsługuje tylko bieżącą erę. W związku z tym jest zgłaszany, ArgumentException jeśli wynikowy rok jest poza erą określonego DateTime. Część czasu dnia wynikowego DateTime pozostaje taka sama jak określona DateTimewartość .

Jeśli na przykład określony miesiąc to Av, który ma 30 dni, określony dzień jest 30 dniem tego miesiąca, a wartość months parametru wynosi 5, wynikowy rok jest o jeden więcej niż określony rok, wynikowy miesiąc to Tevet, a wynikowy dzień to 29 dzień, czyli ostatni dzień w Tevet.

Jeśli wartość parametru months jest ujemna, wynik DateTime jest wcześniejszy niż określony DateTime.

Właściwość Kind zwracanej DateTime wartości zawsze jest DateTimeKind.Unspecifiedrówna . Właściwość parametru time można zachowaćKind, wywołując metodę DateTime.SpecifyKind , jak pokazano w poniższym przykładzie.

returnTime = DateTime.SpecifyKind(cal.AddMonths(time, months), time.Kind);

Dotyczy

Produkt Wersje
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Zobacz też