我无法像在 C# 中那样表示波斯(太阳回历)日期DateTime
,特别是在特定月份的某些日子,例如 31/04,在公历中这样的日期是没有意义的:
System.Globalization.PersianCalendar p = new System.Globalization.PersianCalendar();
DateTime date = new DateTime(2013,7,22);
int year = p.GetYear(date);
int month = p.GetMonth(date);
int day = p.GetDayOfMonth(date);
DateTime d1 = new DateTime(year, month, day);
上面的代码会导致一个ArgumentOutOfRangeException
说法:
Year, Month, and Day parameters describe an un-representable DateTime.
这是预期的。
DateTime
考虑到诸如 30/02 和 31/04 之类的日期,如何在 .NET 中将波斯日期表示为s?