/// <summary>返回指定纪元年份中指定月份的天数。</summary> /// <returns>指定纪元年份中指定月份的天数。</returns> /// <param name="year">1 到 9378 之间的一个整数,用于表示年。</param> /// <param name="month">一个表示月份的整数,如果 <paramref name="year" /> 不是 9378,则值的范围是从 1 到 12;如果 <paramref name="year" /> 是 9378,则值的范围是从 1 到 10。</param> /// <param name="era">整数 0 或 1,用于表示纪元。</param> /// <exception cref="T:System.ArgumentOutOfRangeException"> /// <paramref name="year" />, <paramref name="month" />, ,或 <paramref name="era" /> 超出了此日历支持的范围。</exception> public override int GetDaysInMonth(int year, int month, int era) { PersianCalendar.CheckYearMonthRange(year, month, era); if (month == 10 && year == 9378) { return(13); } int num = PersianCalendar.DaysToMonth[month] - PersianCalendar.DaysToMonth[month - 1]; if (month == 12 && !this.IsLeapYear(year)) { --num; } return(num); }
/// <summary>确定指定纪元年份中的指定月份是否为闰月。</summary> /// <returns>始终返回 false,因为 <see cref="T:System.Globalization.PersianCalendar" /> 类不支持闰月这一概念。</returns> /// <param name="year">1 到 9378 之间的一个整数,用于表示年。</param> /// <param name="month">一个表示月份的整数,如果 <paramref name="year" /> 不是 9378,则值的范围是从 1 到 12;如果 <paramref name="year" /> 是 9378,则值的范围是从 1 到 10。</param> /// <param name="era">整数 0 或 1,用于表示纪元。</param> /// <exception cref="T:System.ArgumentOutOfRangeException"> /// <paramref name="year" />, <paramref name="month" />, ,或 <paramref name="era" /> 超出了此日历支持的范围。</exception> public override bool IsLeapMonth(int year, int month, int era) { PersianCalendar.CheckYearMonthRange(year, month, era); return(false); }