Aracılığıyla paylaş


HijriCalendar.AddYears(DateTime, Int32) Yöntem

Tanım

DateTime Belirtilen sayıda yıl uzaklıkta DateTimebelirtilen bir döndürür.

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

Parametreler

time
DateTime

DateTime Için yıl eklemek için.

years
Int32

Eklenecek yıl sayısı.

Döndürülenler

Bu DateTime , belirtilen yıl sayısını belirtilen DateTimeöğesine eklemenin sonucu olur.

Özel durumlar

Elde edilen DateTime değer desteklenen aralığın dışındadır.

Örnekler

Aşağıdaki kod örneği, hicri takvim açısından bir DateTime öğesinin çeşitli bileşenlerinin değerlerini görüntüler.

using System;
using System.Globalization;

public class SamplesHijriCalendar  {

   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 HijriCalendar.
      HijriCalendar myCal = new HijriCalendar();

      // Displays the values of the DateTime.
      Console.WriteLine( "April 3, 2002 of the Gregorian calendar equals the following in the Hijri 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 Hijri calendar:
   Era:        1
   Year:       1423
   Month:      1
   DayOfYear:  21
   DayOfMonth: 21
   DayOfWeek:  Wednesday

After adding two years and ten months:
   Era:        1
   Year:       1425
   Month:      11
   DayOfYear:  316
   DayOfMonth: 21
   DayOfWeek:  Saturday

*/
Imports System.Globalization


Public Class SamplesHijriCalendar   

   Public Shared Sub Main()

      ' Sets a DateTime to April 3, 2002 of the Gregorian calendar.
      Dim myDT As New DateTime(2002, 4, 3, New GregorianCalendar())

      ' Creates an instance of the HijriCalendar.
      Dim myCal As New HijriCalendar()

      ' Displays the values of the DateTime.
      Console.WriteLine("April 3, 2002 of the Gregorian calendar equals the following in the Hijri 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)

   End Sub

   Public Shared Sub DisplayValues(myCal As Calendar, myDT As DateTime)
      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()
   End Sub

End Class


'This code produces the following output.
'
'April 3, 2002 of the Gregorian calendar equals the following in the Hijri calendar:
'   Era:        1
'   Year:       1423
'   Month:      1
'   DayOfYear:  21
'   DayOfMonth: 21
'   DayOfWeek:  Wednesday
'
'After adding two years and ten months:
'   Era:        1
'   Year:       1425
'   Month:      11
'   DayOfYear:  316
'   DayOfMonth: 21
'   DayOfWeek:  Saturday

Açıklamalar

Sonuçta elde edilen gün, sonuçta DateTime elde edilen yılın sonuç ayında geçerli bir gün değilse, sonuçta elde edilen günün gün bölümü etkilenir. Bu, sonuçta elde edilen yılın sonuç ayındaki son geçerli güne değiştirilir. Sonuçta DateTime elde edilen ay bölümü, belirtilen DateTimeile aynı kalır. Bu uygulama yalnızca geçerli dönemi destekler. Bu nedenle, ArgumentException sonuçta elde edilen yıl belirtilen DateTimeçağın dışındaysa oluşturulur. Sonuçta elde DateTime edilen günün saati bölümü, belirtilen DateTimeile aynı kalır.

Örneğin, Zulhijjah'ın 30 günü olan artık yıllar dışında 29 günü vardır. Belirtilen tarih artık yılda Zulhijjah'ın 30. günüyse ve değeri years 1 ise, sonuç tarihi sonraki yıl Zulhijjah'ın 29. günü olur.

Negatifse years , sonuç DateTime belirtilen DateTimedeğerinden önce olur.

Kind Döndürülen DateTime değerin özelliği her zaman eşittirDateTimeKind.Unspecified. Aşağıdaki örnekte gösterildiği gibi yöntemini çağırarak DateTime.SpecifyKind parametresinin time özelliğini koruyabilirsinizKind.

returnTime = DateTime.SpecifyKind(cal.AddYears(time, years), time.Kind);
returnTime = DateTime.SpecifyKind(cal.AddYears(time, years), time.Kind)

Şunlara uygulanır

Ayrıca bkz.