UmAlQuraCalendar.AddMonths(DateTime, Int32) UmAlQuraCalendar.AddMonths(DateTime, Int32) UmAlQuraCalendar.AddMonths(DateTime, Int32) UmAlQuraCalendar.AddMonths(DateTime, Int32) Method

定義

指定した初期日付から指定した月数が経過した後の日付を計算します。Calculates a date that is a specified number of months away from a specified initial date.

public:
 override DateTime AddMonths(DateTime time, int months);
public override DateTime AddMonths (DateTime time, int months);
override this.AddMonths : DateTime * int -> DateTime
Public Overrides Function AddMonths (time As DateTime, months As Integer) As DateTime

パラメーター

time
DateTime DateTime DateTime DateTime

月数を加算する対象の日付。The date to which to add months. UmAlQuraCalendar クラスでは、04/30/1900 00.00.00 (グレゴリオ暦) から 11/16/2077 23:59:59 (グレゴリオ暦) までの日付しかサポートしていません。The UmAlQuraCalendar class supports only dates from 04/30/1900 00.00.00 (Gregorian date) through 11/16/2077 23:59:59 (Gregorian date).

months
Int32 Int32 Int32 Int32

正または負の、加算する月数。The positive or negative number of months to add.

戻り値

months パラメーターで指定した月数を time パラメーターで指定した日付に加算することで得られる日付。The date yielded by adding the number of months specified by the months parameter to the date specified by the time parameter.

例外

結果として得られる日付が UmAlQuraCalendar クラスでサポートされている範囲外の値です。The resulting date is outside the range supported by the UmAlQuraCalendar class.

months が -120,000 未満であるか、120,000 を超えています。months is less than -120,000 or greater than 120,000.

または-or- time が、このカレンダーでサポートされている範囲外です。time is outside the range supported by this calendar.

次の例では、インスタンス化、DateTime値し、そのコンポーネントのいくつかの値ウムアルクラ暦で表示されます。The following example instantiates a DateTime value and displays the values of several of its components in the Um Al Qura calendar. 次に、呼び出し、AddYearsAddMonthsウムアルクラ暦で日付値に 2 年 10 か月を追加するメソッド。Next, it calls the AddYears and AddMonths methods to add 2 years and 10 months in the Um Al Qura calendar to the date value. 最後に、ウムアルクラ暦のこと、もう一度これらの日付要素の値を表示します。Finally, it again displays the values of these date components in the Um Al Qura calendar.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      DateTime date1 = new DateTime(2011, 4, 3, new GregorianCalendar());
      Calendar cal = new UmAlQuraCalendar();
      
      Console.WriteLine("{0:MMMM d, yyyy} in the Gregorian calendar is equivalent to:", date1);
      DisplayCalendarInfo(cal, date1);
            
      // Add 2 years and 10 months by calling UmAlQuraCalendar methods.
      date1 = cal.AddYears(date1, 2);
      date1 = cal.AddMonths(date1, 10);       

      Console.WriteLine("After adding 2 years and 10 months in the {0} calendar,", 
                        GetCalendarName(cal));
      Console.WriteLine("{0:MMMM d, yyyy} in the Gregorian calendar is equivalent to:", date1);
      DisplayCalendarInfo(cal, date1);
   }

   private static void DisplayCalendarInfo(Calendar cal, DateTime date1)
   {
      Console.WriteLine("   Calendar:   {0}", GetCalendarName(cal));    
      Console.WriteLine("   Era:        {0}", cal.GetEra(date1));
      Console.WriteLine("   Year:       {0}", cal.GetYear(date1));
      Console.WriteLine("   Month:      {0}", cal.GetMonth(date1));
      Console.WriteLine("   DayOfYear:  {0}", cal.GetDayOfYear(date1));
      Console.WriteLine("   DayOfMonth: {0}", cal.GetDayOfMonth(date1));
      Console.WriteLine("   DayOfWeek:  {0}\n", cal.GetDayOfWeek(date1));
   }

   private static string GetCalendarName(Calendar cal)
   {
      return cal.ToString().Replace("System.Globalization.", "").
             Replace("Calendar", "");   
   }
}
// The example displays the following output:
//    April 3, 2011 in the Gregorian calendar is equivalent to:
//       Calendar:   UmAlQura
//       Era:        1
//       Year:       1432
//       Month:      4
//       DayOfYear:  118
//       DayOfMonth: 29
//       DayOfWeek:  Sunday
//    
//    After adding 2 years and 10 months in the UmAlQura calendar,
//    January 1, 2014 in the Gregorian calendar is equivalent to:
//       Calendar:   UmAlQura
//       Era:        1
//       Year:       1435
//       Month:      2
//       DayOfYear:  59
//       DayOfMonth: 29
//       DayOfWeek:  Wednesday
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim date1 As Date = New Date(2011, 4, 3, New GregorianCalendar())
      Dim cal As New UmAlQuraCalendar()
      
      Console.WriteLine("{0:MMMM d, yyyy} in the Gregorian calendar is equivalent to:", date1)
      DisplayCalendarInfo(cal, date1)
            
      ' Add 2 years and 10 months by calling UmAlQuraCalendar methods.
      date1 = cal.AddYears(date1, 2)
      date1 = cal.AddMonths(date1, 10)       

      Console.WriteLine("After adding 2 years and 10 months in the {0} calendar,", 
                        GetCalendarName(cal))
      Console.WriteLine("{0:MMMM d, yyyy} in the Gregorian calendar is equivalent to:", date1)
      DisplayCalendarInfo(cal, date1)
   End Sub
   
   Private Sub DisplayCalendarInfo(cal As Calendar, date1 As Date)
      Console.WriteLine("   Calendar:   {0}", GetCalendarName(cal))    
      Console.WriteLine("   Era:        {0}", cal.GetEra(date1))
      Console.WriteLine("   Year:       {0}", cal.GetYear(date1))
      Console.WriteLine("   Month:      {0}", cal.GetMonth(date1))
      Console.WriteLine("   DayOfYear:  {0}", cal.GetDayOfYear(date1))
      Console.WriteLine("   DayOfMonth: {0}", cal.GetDayOfMonth(date1))
      Console.WriteLine("   DayOfWeek:  {0}", cal.GetDayOfWeek(date1))
      Console.WriteLine()
   End Sub
   
   Private Function GetCalendarName(cal As Calendar) As String
      Return cal.ToString().Replace("System.Globalization.", "").
             Replace("Calendar", "")   
   End Function
End Module
' The example displays the following output:
'    April 3, 2011 in the Gregorian calendar is equivalent to:
'       Calendar:   UmAlQura
'       Era:        1
'       Year:       1432
'       Month:      4
'       DayOfYear:  118
'       DayOfMonth: 29
'       DayOfWeek:  Sunday
'    
'    After adding 2 years and 10 months in the UmAlQura calendar,
'    January 1, 2014 in the Gregorian calendar is equivalent to:
'       Calendar:   UmAlQura
'       Era:        1
'       Year:       1435
'       Month:      2
'       DayOfYear:  59
'       DayOfMonth: 29
'       DayOfWeek:  Wednesday

注釈

結果の日の部分DateTime結果として得られる日が結果として得られる結果の年の月の有効な日付ではない場合に影響します。The day part of the resulting DateTime is affected if the resulting day is not a valid day in the resulting month of the resulting year. 結果として得られる結果の年の月の最後の有効な日付に変更されます。It is changed to the last valid day in the resulting month of the resulting year. 結果の年の部分DateTimeがその月が指定した年を超えた場合の影響を受けるDateTimeします。The year part of the resulting DateTime is affected if the resulting month is outside the year of the specified DateTime. この実装では、現在の時代をサポートします。This implementation supports only the current era. 結果の年が指定した時代 (年号) を超えた場合、そのため、例外がスローされますDateTimeします。Therefore, an exception is thrown if the resulting year is outside the era of the specified DateTime. 結果の時刻の部分DateTimeは、指定したのと同じDateTimeします。The time-of-day part of the resulting DateTime remains the same as the specified DateTime.

たとえば場合、指定した月が Zulkadah、30 日間、指定された日付は、その月の 30 日の値、monthsパラメーターが 3 の場合、結果の年は、1 つ Safar、および結果として得られる d 月は、指定した年を超えるSafar で最後の日である、29 日になりますが。For example, if the specified month is Zulkadah, which has 30 days, the specified day is the 30th day of that month, and the value of the months parameter is 3, the resulting year is one more than the specified year, the resulting month is Safar, and the resulting day is the 29th day, which is the last day in Safar.

場合の値、monthsパラメーターが負の場合、その結果DateTimeが、指定よりも前DateTimeします。If the value of the months parameter is negative, the resulting DateTime is earlier than the specified DateTime.

Kind 、返されたプロパティDateTime常に equals を値DateTimeKind.Unspecifiedします。The Kind property of the returned DateTime value always equals DateTimeKind.Unspecified. 維持することができます、Kindのプロパティ、timeパラメーターを呼び出すことによって、DateTime.SpecifyKindメソッドを次の例を示します。You can preserve the Kind property of the time parameter by calling the DateTime.SpecifyKind method, as the following example shows.

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

適用対象