Partager via


Classe PersianCalendar

Cet article vous offre des remarques complémentaires à la documentation de référence pour cette API.

Le calendrier persan est utilisé dans la majorité des pays/régions où le persan est parlé, bien que certaines régions utilisent des noms de mois différents. Le calendrier persan est le calendrier officiel de l’Iran et de l’Afghanistan, et il est l’un des autres calendriers dans des régions telles que le Kazakhstan et le Tadjikistan.

Remarque

Pour obtenir plus d’informations sur l’utilisation de la classe PersianCalendar et les autres classes de calendrier dans .NET, consultez Utilisation des calendriers.

Le calendrier persan est un calendrier solaire Hijri. Il commence à compter de l’année du Hijra, qui correspond à 622 de notre ère, l’année où Muhammad (PBUH) a migré de La Mecque à Médina.

Le calendrier persan est basé sur une année solaire et compte environ 365 jours. Une année passe par quatre saisons et une nouvelle année commence quand le soleil semble traverser l’équateur de l’hémisphère sud vers l’hémisphère nord comme vu du centre de la Terre. La nouvelle année marque le premier jour du mois de Farvardeen qui correspond au premier jour du printemps dans l’hémisphère nord. Par exemple, la date du 21 mars 2002 de notre ère correspond au premier jour du mois de Farvardeen de l’année 1381 en année persane.

Chacun des six premiers mois du calendrier persan compte 31 jours, chacun des cinq prochains mois a 30 jours et le dernier mois a 29 jours pour une année commune et 30 jours pour une année bissextile. Une année bissextile est une année qui, lorsqu’elle est divisée par 33, a un restant à courir de 1, 5, 9, 13, 17, 22, 26 ou 30. Par exemple, l’année 1370 est une année bissextile, car sa division par 33 génère un restant à courir de 17. Il y existe environ huit années bissextiles dans chaque cycle de 33 ans.

La classe PersianCalendar et les versions de .NET Framework

À partir de .NET Framework 4.6, la classe PersianCalendar utilise l’algorithme astronomique solaire Hijri plutôt qu’un algorithme d’observation pour calculer des dates. Cela rend l’implémentation de PersianCalendar cohérente avec le calendrier persan utilisé en Iran et en Afghanistan, les deux pays dans lesquels le calendrier persan est le plus largement utilisé. La modification affecte toutes les applications exécutées sur .NET Framework 4 ou version ultérieure si .NET Framework 4.6 est installé.

Résultat de l’algorithme modifié :

  • Les deux algorithmes doivent retourner des résultats identiques lors de la conversion de dates comprises entre 1800 et 2123 dans le calendrier grégorien.

  • Les deux algorithmes peuvent retourner des résultats différents lors de la conversion de dates antérieures à 1800 et après 2123 dans le calendrier grégorien.

  • La valeur de propriété MinSupportedDateTime a changé du 21 mars 0622 dans le calendrier grégorien au 22 mars 0622 dans le calendrier grégorien.

  • La valeur de la propriété MaxSupportedDateTime est passée du 10e jour du 10e mois de l’année 9378 dans le calendrier persan au 13e jour du 10e mois de l’année 9378 dans le calendrier persan.

  • La méthode IsLeapYear peut retourner un résultat différent du précédent.

Utiliser la classe PersianCalendar

Les applications utilisent un objet PersianCalendar pour calculer des dates dans le calendrier persan ou convertir des dates persanes à partir et en dates grégoriennes.

Vous ne pouvez pas utiliser un objet PersianCalendar comme calendrier par défaut pour une culture. Le calendrier par défaut est spécifié par la propriété CultureInfo.Calendar et doit être l’un des calendriers retournés par la propriété CultureInfo.OptionalCalendars. Actuellement, la classe PersianCalendar n’est pas un calendrier facultatif pour toute culture prise en charge par la classe CultureInfo et ne peut donc pas être un calendrier par défaut.