New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bug in System.Globalization.PersianCalendar #4009
Comments
Note, according to MSDN:
|
@tarekgh You might want to take a look at this. |
We have changed the implementation of the Persian calendar to match the modern Iranian and Afghani calendar which is the Solar Hijri calendar. the calendar mainly used there. |
I forgot to mention Windows 10 also supported this calendar for some locales (like Iran) and used exactly same Solar Hijri calendar algorithm. so now Windows and .Net are fully consistent here |
So what does it do before 1800? As far as I'm aware, the regular Solar Hirji calendar used to be applied throughout history for PersianCalendar, i.e. the 33 year cycle of leap years 1, 5, 9, 13, 17, 22, 26, or 30 - which is what Wikipedia records as well in http://en.wikipedia.org/wiki/Iranian_calendars#Modern_calendar:_Solar_Hijri_.28SH.29 There's a second wikipedia article which may be relevant, however, indicating both an observational calendar and a "Solar Hijri algorithmic calendar" with cycles, grand cycles and great grand cycles... Is there a good web source for what is implemented now? The latter wikipedia article lists several possibilities, by the looks of it. (For Noda Time, I'll need to work out whether to change our implementation or create a new calendar system with the same rules as the new one, but keep the existing implementation as well for those who want it...) |
The accurate reference would be Calendrical Calculations book 3rd Edition by Nachum Dershowitz and Edward M. Reingold. |
Thanks - I assume this is following the astronomical rather than the arithmetic form? |
That is right. it is astronomical. |
Please let me know if you have any other question at any time. |
Returns
False
on any machine with .NET Framework 4.6 CTP installed when targeting .NET 4.0 or higher.Returns
True
when targeting .NET 3.5 or lower - or when targeting .NET 4.0+ on a machine without Framework 4.6.The text was updated successfully, but these errors were encountered: