Exemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="persianDate"></param>
        /// <returns></returns>
        public static DateTime PersianDateTimeToGergorian(List <int> persianDate)
        {
            var        persianCalendar = new System.Globalization.PersianCalendar();
            DateTime   date            = new DateTime(1900, 1, 1);
            List <int> Start           = GergorianDateTimeToPersion(date);

            date = persianCalendar.AddYears(date, persianDate[0] - Start[0]);
            date = persianCalendar.AddMonths(date, persianDate[1] - Start[1]);
            date = persianCalendar.AddDays(date, persianDate[2] - Start[2]);

            try
            {
                date = persianCalendar.AddHours(date, persianDate[3] - Start[3]);
                date = persianCalendar.AddMinutes(date, persianDate[4] - Start[4]);
                date = persianCalendar.AddSeconds(date, persianDate[5] - Start[5]);
            }
            catch
            {
                date = persianCalendar.AddHours(date, 12 - Start[3]);
                date = persianCalendar.AddMinutes(date, 0 - Start[4]);
                date = persianCalendar.AddSeconds(date, 0 - Start[5]);
            }

            return(date);
        }