예제 #1
0
        internal virtual int GetDatePart(DateTime time, int part)
        {
            int HijriYear  = 0;
            int HijriMonth = 0;
            int HijriDay   = 0;

            UmAlQuraCalendar.CheckTicksRange(time.Ticks);
            UmAlQuraCalendar.ConvertGregorianToHijri(time, ref HijriYear, ref HijriMonth, ref HijriDay);
            if (part == 0)
            {
                return(HijriYear);
            }
            if (part == 2)
            {
                return(HijriMonth);
            }
            if (part == 3)
            {
                return(HijriDay);
            }
            if (part == 1)
            {
                return((int)(UmAlQuraCalendar.GetAbsoluteDateUmAlQura(HijriYear, HijriMonth, HijriDay) - UmAlQuraCalendar.GetAbsoluteDateUmAlQura(HijriYear, 1, 1) + 1L));
            }
            throw new InvalidOperationException(Environment.GetResourceString("InvalidOperation_DateTimeParsing"));
        }