Dela via


Den här artikeln innehåller ytterligare kommentarer till referensdokumentationen för det här API:et.

Den persiska kalendern används i de flesta länder/regioner där persiska talas, även om vissa regioner använder olika månadsnamn. Den persiska kalendern är den officiella kalendern för Iran och Afghanistan, och den är en av de alternativa kalendrarna i regioner som Kazakstan och Tadzjikistan.

Anmärkning

Information om hur du använder PersianCalendar klassen och de andra kalenderklasserna i .NET finns i Arbeta med kalendrar.

Den persiska kalendern är en hijrikalender för solenergi och börjar från Hijras år, som motsvarar 622 C.E. året då Muhammed (PBUH) migrerades från Mecka till Medina.

Den persiska kalendern baseras på ett solår och är cirka 365 dagar långt. Ett år växlar genom fyra säsonger, och ett nytt år börjar när solen verkar korsa ekvatorn från södra halvklotet till norra halvklotet sett från jordens mitt. Det nya året markerar den första dagen i månaden Farvardeen, som är den första vårdagen på norra halvklotet. Till exempel motsvarar datumet 21 mars 2002 C.E. den första dagen i farvardeens månad år 1381 Anno Persico.

Var och en av de första sex månaderna i den persiska kalendern har 31 dagar, var och en av de kommande fem månaderna har 30 dagar, och den senaste månaden har 29 dagar under ett gemensamt år och 30 dagar under ett skottår. Ett skottår är ett år som, när det delas med 33, har resten 1, 5, 9, 13, 17, 22, 26 eller 30. Till exempel är år 1370 ett skottår eftersom uppdelningen med 33 ger resten av 17. Det finns ungefär åtta skottår i varje 33-årscykel.

Klassen PersianCalendar och .NET-versionerna

Från och med .NET Framework 4.6 PersianCalendar använder klassen Hijri solar astronomical-algoritmen i stället för en observationsalgoritm för att beräkna datum. Detta gör genomförandet PersianCalendar förenligt med den persiska kalendern som används i Iran och Afghanistan, de två länder där den persiska kalendern används mest. Ändringen påverkar alla appar som körs på .NET Framework 4 eller senare om .NET Framework 4.6 är installerat.

Som ett resultat av den ändrade algoritmen:

  • De två algoritmerna bör returnera identiska resultat vid konvertering av datum mellan 1800 och 2123 i den gregorianska kalendern.
  • De två algoritmerna kan returnera olika resultat när datum konverteras före 1800 och efter 2123 i den gregorianska kalendern.
  • Egenskapsvärdet MinSupportedDateTime har ändrats från 21 mars 0622 i den gregorianska kalendern till 22 mars 0622 i den gregorianska kalendern.
  • Egenskapsvärdet MaxSupportedDateTime har ändrats från den 10:e dagen i den tionde månaden av året 9378 i den persiska kalendern till den 13:e dagen i den tionde månaden av året 9378 i den persiska kalendern.
  • Metoden IsLeapYear kan returnera ett annat resultat än tidigare.

Använd klassen PersianCalendar

Du kan använda ett PersianCalendar objekt för att beräkna datum i den persiska kalendern eller konvertera persiska datum till och från gregorianska datum. Den persiska kalendern är standardkalendern för kulturer som persiska (Afghanistan) och centralkurdiska (Iran).