Beispiel #1
0
    public string ConvertToIranTimeString(DateTime Date)
    {
        //string zoneId = "Iran Standard Time";
        //TimeZoneInfo tzi = TimeZoneInfo.FindSystemTimeZoneById(zoneId);
        //DateTime result = TimeZoneInfo.ConvertTimeFromUtc(Date, tzi);

        Date = Date.AddMinutes(-150);

        PersianCalendar pc = new PersianCalendar();
        string year = pc.GetYear(Date).ToString();
        string Month = pc.GetMonth(Date).ToString();
        string Day = pc.GetDayOfMonth(Date).ToString();
        string Hour = pc.GetHour(Date).ToString();
        string Minute = pc.GetMinute(Date).ToString();

        if (Month.Length == 1)
        {
            Month = "0" + Month;
        }
        if (Day.Length == 1)
        {
            Day = "0" + Day;
        }
        if (Hour.Length == 1)
        {
            Hour = "0" + Hour;
        }
        if (Minute.Length == 1)
        {
            Minute = "0" + Minute;
        }

        return year + "/" + Month + "/" + Day + " " + Hour + ":" + Minute;
    }
Beispiel #2
0
 public void IsLeapMonth(int year, int month)
 {
     PersianCalendar calendar = new PersianCalendar();
     Assert.False(calendar.IsLeapMonth(year, month));
     Assert.False(calendar.IsLeapMonth(year, month, 0));
     Assert.False(calendar.IsLeapMonth(year, month, 1));
 }
 public static SqlString ToPersianDateTime(DateTime dt)
 {
     try
     {
         string result = "";
         if (dt != null)
         {
             PersianCalendar objPersianCalendar = new PersianCalendar();
             int year = objPersianCalendar.GetYear(dt);
             int month = objPersianCalendar.GetMonth(dt);
             int day = objPersianCalendar.GetDayOfMonth(dt);
             int hour = objPersianCalendar.GetHour(dt);
             int min = objPersianCalendar.GetMinute(dt);
             int sec = objPersianCalendar.GetSecond(dt);
             result = year.ToString().PadLeft(4, '0') + "/" +
                      month.ToString().PadLeft(2, '0') + "/" +
                      day.ToString().PadLeft(2, '0') + " " +
                      hour.ToString().PadLeft(2, '0') + ":" +
             min.ToString().PadLeft(2, '0') + ":" +
                                    sec.ToString().PadLeft(2, '0');
         }
         return new SqlString(result);
     }
     catch (Exception e)
     {
         return SqlString.Null;
     }
 }
Beispiel #4
0
 public void GetLeapMonth(int year)
 {
     PersianCalendar calendar = new PersianCalendar();
     int expected = 0;
     Assert.Equal(expected, calendar.GetLeapMonth(year, 0));
     Assert.Equal(expected, calendar.GetLeapMonth(year, 1));
 }
Beispiel #5
0
 public void IsLeapDay(int year, int month, int day, bool expected)
 {
     PersianCalendar calendar = new PersianCalendar();
     Assert.Equal(expected, calendar.IsLeapDay(year, month, day));
     Assert.Equal(expected, calendar.IsLeapDay(year, month, day, 0));
     Assert.Equal(expected, calendar.IsLeapDay(year, month, day, 1));
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="PersianCultureInfo"/> class.
 /// </summary>
 public PersianCultureInfo()
     : base("fa-IR", false)
 {
     calendar = new PersianCalendar();
     systemCalendar = new System.Globalization.PersianCalendar();
     format = CreateDateTimeFormatInfo();
     SetCalendar();
 }
Beispiel #7
0
 public static string GetDate(DateTime date)
 {
     DateTime dt = (DateTime)date;
     PersianCalendar objPersianCalendar = new PersianCalendar();
     int year = objPersianCalendar.GetYear(dt);
     int month = objPersianCalendar.GetMonth(dt);
     int day = objPersianCalendar.GetDayOfMonth(dt);
     return string.Concat(year.ToString().PadLeft(4, '0'), month.ToString().PadLeft(2, '0'), day.ToString().PadLeft(2, '0'));
 }
Beispiel #8
0
	public string getShamsiDate(DateTime Date)
	{
        PersianCalendar pc = new PersianCalendar();
        string year = pc.GetYear(Date).ToString();
        string Mounth = pc.GetMonth(Date).ToString();
        string Day = pc.GetDayOfMonth(Date).ToString();

        string shamsiDate = year + "/" + Mounth + "/" + Day;

        return shamsiDate;
	}
Beispiel #9
0
    //public String GetData()
    //{


    //    var Lst = context.CharityNews.OrderBy(s => s.SubmitDate).Take(3).ToList();
   
    //        JavaScriptSerializer js = new JavaScriptSerializer();
    //        return js.Serialize(Lst);




    //    }
    

    protected string ShamsiDate(Object SubmitDate)
    {
        DateTime Date = Convert.ToDateTime(SubmitDate);

        PersianCalendar pc = new PersianCalendar();
        string year = pc.GetYear(Date).ToString();
        string Mounth = pc.GetMonth(Date).ToString();
        string Day = pc.GetDayOfMonth(Date).ToString();

        string shamsiDate=year + "/" + Mounth + "/" + Day;

        return shamsiDate;
    }
    public static SqlBoolean IsLeapYear(int sal)
    {
        try
        {
            PersianCalendar jc = new PersianCalendar();

            return jc.IsLeapYear(sal);
        }
        catch (Exception e)
        {
            return SqlBoolean.Null;
        }

    }
Beispiel #11
0
        public void IsLeapYear()
        {
            PersianCalendar calendar = new PersianCalendar();
            int lastNonLeap = 1;

            foreach (int year in s_leapYears)
            {
                Assert.True(calendar.IsLeapYear(year), string.Format("Year {0} is not recognized as leap year", year));
                Assert.False(calendar.IsLeapYear(lastNonLeap), string.Format("Year {0} is recognized as leap year", lastNonLeap));
                lastNonLeap = year - 1;
            }

            Assert.False(calendar.IsLeapYear(9378));
        }
Beispiel #12
0
 public static void Log(string log)
 {
     PersianCalendar objPersianCalendar = new PersianCalendar();
     int year = objPersianCalendar.GetYear(DateTime.Now);
     int month = objPersianCalendar.GetMonth(DateTime.Now);
     int day = objPersianCalendar.GetDayOfMonth(DateTime.Now);
     int hour = objPersianCalendar.GetHour(DateTime.Now);
     int min = objPersianCalendar.GetMinute(DateTime.Now);
     StreamWriter objStreamWriter = File.AppendText(HttpContext.Current.Server.MapPath("~/log.txt"));
     lock (objStreamWriter)
     {
         objStreamWriter.WriteLine(string.Concat("Log Date : ", string.Concat(year.ToString(), "/", month.ToString(), "/", day.ToString(), " ", hour.ToString(), ":", min.ToString().PadLeft(2, '0'))));
         objStreamWriter.WriteLine(log);
         objStreamWriter.WriteLine("--------------------------------------------");
         objStreamWriter.Close();
     }
 }
Beispiel #13
0
    protected void Page_Load(object sender, EventArgs e)
    {
        AccessControl ac = new AccessControl();
        if (!ac.getSectionAccess("Charity"))
        {
            Response.Redirect("~/Error.aspx?Code=NoAccess");
        }

        DataTable dt = new DataTable();
        DataSet ds = new DataSet();
        SqlConnection sqlConn = new SqlConnection(ConfigurationManager.ConnectionStrings["ShopConnectionString"].ConnectionString);

        SqlDataAdapter sda = new SqlDataAdapter("sp_charityNewsInfo", sqlConn);
        sda.SelectCommand.CommandType = CommandType.StoredProcedure;
        sda.SelectCommand.Parameters.Add("@NewsId", SqlDbType.Int).Value = Convert.ToInt32(Request.QueryString["NewsId"]);
        sda.Fill(ds);
        dt = ds.Tables[0];

        if (dt.Rows.Count == 0) //news doesn't exist
        {
            Response.Redirect("~/Charity.aspx");
        }
        else //news exists
        {
            LabelTitle.Text = dt.Rows[0]["Subject"].ToString();
            DateTime NewsDate = Convert.ToDateTime(dt.Rows[0]["SubmitDate"].ToString());
            PersianCalendar pc = new PersianCalendar();
            string year = pc.GetYear(NewsDate).ToString();
            string Mounth = pc.GetMonth(NewsDate).ToString();
            string Day = pc.GetDayOfMonth(NewsDate).ToString();

            LabelDate.Text = year + "/" + Mounth + "/" + Day;

            LabelBody.Text = dt.Rows[0]["Body"].ToString();
            ImageImage.ImageUrl = "~/images/charity/news/" + Request.QueryString["NewsId"] + ".png";
            Page.Title = "Salestan : اخبار خیریه : " + dt.Rows[0]["Subject"].ToString();


            HyperLinkShareFacebook.NavigateUrl = "http://www.facebook.com/share.php?u=" + Request.Url.AbsoluteUri + "&t=" + dt.Rows[0]["Subject"].ToString();
            HyperLinkShareTwitter.NavigateUrl = "http://twitter.com/home?status=" + dt.Rows[0]["Subject"].ToString() + " " + Request.Url.AbsoluteUri;
            HyperLinkShareEmail.NavigateUrl = "mailto:?subject=" + dt.Rows[0]["Subject"].ToString() + "&body=" + Request.Url.AbsoluteUri;
            HyperLinkSharePrint.NavigateUrl = "~/Print.aspx?Mode=CharityNews&ItemId=" + Request.QueryString["NewsId"];
        }
        sda.Dispose();
        sqlConn.Close();
    }
Beispiel #14
0
        public void CalendarConversion()
        {
            PersianCalendar calendar = new PersianCalendar();
            for (int i = 0; i < s_dates.Length; i+= 6)
            {
                DateTime date = new DateTime(s_dates[i + 3], s_dates[i + 4], s_dates[i + 5]);

                Assert.Equal(s_dates[i], calendar.GetYear(date));
                Assert.Equal(s_dates[i + 1], calendar.GetMonth(date));
                Assert.Equal(s_dates[i + 2], calendar.GetDayOfMonth(date));

                DateTime result = calendar.ToDateTime(s_dates[i], s_dates[i + 1], s_dates[i + 2], 0, 0, 0, 0);
                Assert.Equal(s_dates[i + 3], result.Year);
                Assert.Equal(s_dates[i + 4], result.Month);
                Assert.Equal(s_dates[i + 5], result.Day);
            }
        }
Beispiel #15
0
    protected void btnSave_Click(object sender, EventArgs e)
    {
        if (!string.IsNullOrEmpty(this.txtYear.Text) && Public.ToShort(this.txtYear.Text) > 1300)
        {
            int year = Public.ToInt(this.txtYear.Text);
            int daysOfYear = new PersianCalendar().IsLeapYear(year) ? 366 : 365;
            DateTime date = Persia.Calendar.ConvertToGregorian(year, 1, 1, Persia.DateType.Persian);
            byte dayOfWeek = (byte)(date.DayOfWeek + 2) == (byte)8 ? (byte)1 : (byte)(date.DayOfWeek + 2);
            int[] persianDate = null;
            int i;
            for (i = 1; i <= daysOfYear; i++)
            {
                persianDate = Persia.Calendar.ConvertToPersian(date).ArrayType;
                db.Calendars.InsertOnSubmit(new SupplySystem.Calendar
                {
                    GeorgianDate = date
                    ,
                    SolarYear = (short)year
                    ,
                    SolarMonth = (byte)persianDate[1]
                    ,
                    SolarDay = (byte)persianDate[2]
                    ,
                    DayOfWeek = dayOfWeek
                    ,
                    IsHoliday = IsHoliday(dayOfWeek)
                });
                dayOfWeek = dayOfWeek == 7 ? (byte)1 : ++dayOfWeek;
                date = date.AddDays(1);
            }

            if (i == 365 || i == 366)
            {
                db.SubmitChanges();
                this.lblMessage.Text = Public.SUCCESSMESSAGE;
                this.drpYear.DataSource = from c in db.Calendars
                                          group c by new { c.SolarYear } into years
                                          orderby years.Key.SolarYear descending
                                          select new { years.Key.SolarYear };
                this.drpYear.DataBind();
                ClearControls();
            }
            //this.lblMessage.Text = "سال تکراری می باشد";
        }
    }
        public static CultureInfo GetPersianCultureInfo()
        {
            var persianCultureInfo = new CultureInfo("fa-IR");

            SetPersianDateTimeFormatInfo(persianCultureInfo.DateTimeFormat);
            SetNumberFormatInfo(persianCultureInfo.NumberFormat);

            var cal = new PersianCalendar();

            FieldInfo fieldInfo = persianCultureInfo.GetType().GetField("calendar", BindingFlags.NonPublic | BindingFlags.Instance);
            if (fieldInfo != null)
                fieldInfo.SetValue(persianCultureInfo, cal);

            FieldInfo info = persianCultureInfo.DateTimeFormat.GetType().GetField("calendar", BindingFlags.NonPublic | BindingFlags.Instance);
            if (info != null)
                info.SetValue(persianCultureInfo.DateTimeFormat, cal);

            return persianCultureInfo;
        }
Beispiel #17
0
    //I had no use for WriteJson section, i just wrote it, so i do not guarantee it working
    public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
    {
        if (value == null)
        {
            writer.WriteNull();
            return;
        }
        var      nullableType = Nullable.GetUnderlyingType(value.GetType());
        var      isNullable   = nullableType != null;
        DateTime date;

        if (isNullable)
        {
            date = ((DateTime?)value).Value;
        }
        else
        {
            date = (DateTime)value;
        }
        PersianCalendar pc = new PersianCalendar();

        writer.WriteValue(pc.GetYear(date) + "/" + pc.GetMonth(date) + "/" + pc.GetDayOfMonth(date));
    }
        public static DateTime ToDateTime(this string dateStr)
        {
            if (dateStr == null && dateStr.Length != 8)
            {
                throw new Exception("Invalid string Date");
            }

            if (dateStr.Contains("/"))
            {
                dateStr = dateStr.Replace("/", "");
            }

            int.TryParse(dateStr.Substring(0, 4), out var year);
            int.TryParse(dateStr.Substring(4, 2), out var month);
            int.TryParse(dateStr.Substring(6, 2), out var day);
            if (year == 0 || month == 0 || day == 0)
            {
                throw new Exception("Invalid string Date");
            }
            var pc = new PersianCalendar();

            return(pc.ToDateTime(year, month, day, 0, 0, 0, 0));
        }
Beispiel #19
0
        internal static DateTime GetCompanyStartDate()
        {
            PersianCalendar pc    = new PersianCalendar();
            var             now   = DateTime.Now;
            var             year  = pc.GetYear(now);
            var             month = pc.GetMonth(now);
            var             day   = pc.GetDayOfMonth(now);

            if (day > 25)
            {
                day = 26;
                return(pc.ToDateTime(year, month, day, 0, 0, 0, 0));
            }

            month--;
            if (month < 1)
            {
                month = 12;
                year--;
            }
            day = 26;
            return(pc.ToDateTime(year, month, day, 0, 0, 0, 0));
        }
Beispiel #20
0
        internal static DateTime GetCompanyEndDate()
        {
            PersianCalendar pc    = new PersianCalendar();
            var             now   = DateTime.Now;
            var             year  = pc.GetYear(now);
            var             month = pc.GetMonth(now);
            var             day   = pc.GetDayOfMonth(now);

            if (day < 26)
            {
                day = 25;
                return(pc.ToDateTime(year, month, day, 0, 0, 0, 0));
            }

            month++;
            if (month > 12)
            {
                month = 1;
                year++;
            }
            day = 25;
            return(pc.ToDateTime(year, month, day, 0, 0, 0, 0));
        }
Beispiel #21
0
        public Result <Article> Add(Article model)
        {
            var    dt           = DateTime.Now;
            var    pc           = new PersianCalendar();
            string trackingCode = pc.GetYear(dt).ToString().Substring(2, 2) +
                                  pc.GetMonth(dt).ToString();

            model.TrackingCode = trackingCode;
            model.ID           = Guid.NewGuid();
            if (model.Tags.Count > 0)
            {
                var tags = new List <Tags>();
                foreach (var item in model.Tags)
                {
                    tags.Add(new Tags {
                        Name = item
                    });
                }
                _tagsService.Insert(tags, model.ID);
            }
            model.ReadingTime = CalculateReadingTime.MinReadTime(model.Body);
            return(_dataSource.Insert(model));
        }
Beispiel #22
0
        public async Task <IActionResult> Detail(string number)
        {
            var pc   = new PersianCalendar();
            var rent = await _repository.FindRentBy(number);

            if (rent != null)
            {
                var viewModel = new RentDetailViewModel()
                {
                    Price       = rent.Price.ToString(),
                    Day         = rent.Day.ToString(),
                    Number      = rent.Number.ToString(),
                    VehicleName = rent.Vehicle?.Name,
                    RentDate    = pc.PersianDate(rent.RentDate),
                    BuyerName   = rent.Buyer?.Name,
                    CancelDate  = rent.CancelDate != null?pc.PersianDate(rent.CancelDate ?? DateTime.MinValue) : "",
                                      IsCanceled = rent.IsCanceled
                };
                return(View(viewModel));
            }

            return(RedirectToAction(nameof(Index)));
        }
Beispiel #23
0
        public static StartEndMonth StartEndYear(this DateTime date)
        {
            var dateTime        = new DateTime(date.Year, date.Month, date.Day, new GregorianCalendar());
            var persianCalendar = new PersianCalendar();

            StartEndMonth startEndMonth = new StartEndMonth();

            var Day   = persianCalendar.GetDayOfMonth(dateTime).ToString();
            var Month = persianCalendar.GetMonth(dateTime).ToString();
            var Year  = persianCalendar.GetYear(dateTime).ToString();

            var days = persianCalendar.GetDaysInMonth(date.Year, 12, PersianCalendar.PersianEra);

            var startStr  = $"{persianCalendar.GetYear(dateTime)}/01/01";
            var endStr    = $"{persianCalendar.GetYear(dateTime)}/12/{days.ToString("00")}";
            var startDate = ToDateTime(startStr);
            var endDate   = ToDateTime(endStr);

            startEndMonth.StartDate = startDate;
            startEndMonth.EndDate   = endDate;

            return(startEndMonth);
        }
        /// <summary>
        /// YYYY/MM/DD یا YYYY/MM/DD HH:MM
        /// </summary>
        /// <returns></returns>
        public static DateTime ConvertStringToDateTime(string str)
        {
            if (string.IsNullOrEmpty(str) || string.IsNullOrWhiteSpace(str))
            {
                return(DateTime.MinValue);
            }
            PersianCalendar p    = new PersianCalendar();
            DateTime        dta1 = new DateTime();

            string[] parts = str.Split(' ');
            if (parts.Length == 1)
            {
                string[] parts2 = parts[0].Split('/', '-');
                dta1 = p.ToDateTime(Convert.ToInt32(parts2[0]), Convert.ToInt32(parts2[1]), Convert.ToInt32(parts2[2]), 0, 0, 0, 0);
            }
            else if (parts.Length == 2)
            {
                string[] date = parts[0].Split('/', '-');
                string[] time = parts[1].Split(':');
                dta1 = p.ToDateTime(Convert.ToInt32(date[0]), Convert.ToInt32(date[1]), Convert.ToInt32(date[2]), Convert.ToInt32(time[0]), Convert.ToInt32(time[1]), 0, 0);
            }
            return(dta1);
        }
Beispiel #25
0
        /// <summary>
        /// Converts Shamsi Date to Miladi
        /// </summary>
        /// <param name="shamsiDate">Shamsi Date in YYYY/MM/DD format</param>
        /// <returns>DateTime containing the converted date</returns>
        public static DateTime ToMiladi(string shamsiDate)
        {
            string[] dateEntities = shamsiDate.Split('/');

            if (dateEntities == null ||
                dateEntities.Length != 3 ||
                dateEntities[0].Length != 4 ||
                dateEntities[1].Length != 2 ||
                dateEntities[2].Length != 2
                )
            {
                throw new ArgumentException();
            }

            PersianCalendar Shamsi = new PersianCalendar();
            DateTime        date   = new DateTime(
                (int.Parse(dateEntities[0])), // Year
                (int.Parse(dateEntities[1])), // Month
                (int.Parse(dateEntities[2])), // Day
                Shamsi);

            return(date);
        }
Beispiel #26
0
        /// <summary>
        /// Converts Gregorian date To Hijri date.
        /// </summary>
        /// <param name="inYear"></param>
        /// <param name="inMonth"></param>
        /// <param name="inDay"></param>
        /// <param name="outYear"></param>
        /// <param name="outMonth"></param>
        /// <param name="outDay"></param>
        /// <returns></returns>
        public static bool GregorianToHijri(int inYear, int inMonth, int inDay,
                                            out int outYear, out int outMonth, out int outDay)
        {
            try
            {
                var ym = inYear;
                var mm = inMonth;
                var dm = inDay;

                var sss = new PersianCalendar();
                outYear  = sss.GetYear(new DateTime(ym, mm, dm, new GregorianCalendar()));
                outMonth = sss.GetMonth(new DateTime(ym, mm, dm, new GregorianCalendar()));
                outDay   = sss.GetDayOfMonth(new DateTime(ym, mm, dm, new GregorianCalendar()));
                return(true);
            }
            catch //invalid date
            {
                outYear  = -1;
                outMonth = -1;
                outDay   = -1;
                return(false);
            }
        }
Beispiel #27
0
        // iT SHOULD RETURN NULL IF THE STRING IS NOT VALID, RETURN THE DATETIME VALUE IF IT IS VALID

        /// <summary>
        /// Input text is parsed in the correct format and changed into a DateTime object.
        /// If the text can not be parsed TextParseError Event is thrown.
        /// </summary>
        private DateTime?ParseText(string text)
        {
            DateTime newSelectedDate;

            // TryParse is not used in order to be able to pass the exception to the TextParseError event
            try
            {
                newSelectedDate = ParsePersianDate(text);

                if (PersianCalendar.IsValidDateSelection(this._persianCalendar, newSelectedDate))
                {
                    return(newSelectedDate);
                }
                else
                {
                    DatePickerDateValidationErrorEventArgs dateValidationError = new DatePickerDateValidationErrorEventArgs(new ArgumentOutOfRangeException("text", "SelectedDate value is not valid."), text);
                    OnDateValidationError(dateValidationError);

                    if (dateValidationError.ThrowException)
                    {
                        throw dateValidationError.Exception;
                    }
                }
            }
            catch (FormatException ex)
            {
                DatePickerDateValidationErrorEventArgs textParseError = new DatePickerDateValidationErrorEventArgs(ex, text);
                OnDateValidationError(textParseError);

                if (textParseError.ThrowException && textParseError.Exception != null)
                {
                    throw textParseError.Exception;
                }
            }

            return(null);
        }
Beispiel #28
0
                public static string ToShorShamsi(DateTime?datetime)
                {
                    try
                    {
                        if (datetime.HasValue)
                        {
                            string val = datetime.Value.ToString();
                            if (Convertor.IsDate(val))
                            {
                                DateTime MDate = new DateTime();
                                MDate = Convert.ToDateTime(val);
                                PersianCalendar Shamsi = new PersianCalendar();
                                string          m      = Shamsi.GetMonth(MDate).ToString();
                                if (m.Length < 2)
                                {
                                    m = m.Insert(0, "0");
                                }
                                string d = Shamsi.GetDayOfMonth(MDate).ToString();
                                if (d.Length < 2)
                                {
                                    d = d.Insert(0, "0");
                                }

                                return(Shamsi.GetYear(MDate).ToString() + "/" + m + "/" + d);
                            }
                            return("0/0/0");
                        }
                        else
                        {
                            return("0/0/0");
                        }
                    }
                    catch (Exception ee)
                    {
                        return("0/0/0");
                    }
                }
Beispiel #29
0
        public static bool UpdateProductTabel(Product product)
        {
            var date        = DateTime.Now;
            var persianDate = new PersianCalendar();
            var productDate = $"{persianDate.GetYear(date)}/{persianDate.GetMonth(date)}" +
                              $"/{persianDate.GetDayOfMonth(date)}";
            var toppl = product.ProductPopularSupport ? 1 : 0;

            try
            {
                var productToUpdate = Context.Products.Single(p => p.ProductId == product.ProductId);
                productToUpdate.ProductName           = product.ProductName;
                productToUpdate.ProductCount          = product.ProductCount;
                productToUpdate.ProductUnitPrice      = product.ProductUnitPrice;
                productToUpdate.ProductDescription    = product.ProductDescription;
                productToUpdate.ProductPopularSupport = toppl == 1;
                productToUpdate.ProductData           = productDate;
                if (product.Catalog != null)
                {
                    productToUpdate.Catalog = Context.Catalogs.Single(c => c.CatalogId == product.Catalog.CatalogId);
                }
                Context.SaveChanges();
                return(true);
            }
            catch
            {
                var windowRemove = new RemoveWindow
                {
                    WindowTitle = "بروزرسانی اموال",
                    Caption     = "خطایی هنگام ویرایش  رخ داده است.",
                    OneBtn      = true,
                    Btn2        = "باشه"
                };
                windowRemove.ShowDialog();
                return(false);
            }
        }
Beispiel #30
0
        private void NewProductCode_Load(object sender, EventArgs e)
        {
            AnbarDataContext anbar = new AnbarDataContext();

            InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages[1];
            btn_cancel.Enabled = false;
            btn_save.Enabled   = false;
            //Date current
            string          year, month, day;
            PersianCalendar pcalender = new PersianCalendar();

            year  = pcalender.GetYear(DateTime.Now).ToString();
            month = pcalender.GetMonth(DateTime.Now).ToString();
            day   = pcalender.GetDayOfMonth(DateTime.Now).ToString();
            toolStripStatusLabel6.Text = year + "/" + month + "/" + day;
            //view information
            //var query = from tableproduct in anbar.Products
            //            select new { tableproduct.ProductID,tableproduct.Mojodi ,tableproduct.SellPrice };
            if (ds.Tables["products"] == null)
            {
                da.SelectCommand.CommandType = CommandType.StoredProcedure;
                da.SelectCommand.CommandText = "viewproduct";
                da.Fill(ds, "products");
            }
            dataGridView1.DataSource = ds.Tables["products"];
            if (dataGridView1.Rows.Count != 0)
            {
                dataGridView1.SelectedRows[0].Selected = false;
            }
            dataGridView1.SelectionChanged += new EventHandler(dataGridView1_SelectionChanged);
            //dataGridView1.BindingContext[dataGridView1.DataSource].Position = -1;
            //DataGrid Style
            DataGridViewCellStyle objellStyle = new DataGridViewCellStyle();

            objellStyle.BackColor = Color.WhiteSmoke;
            dataGridView1.AlternatingRowsDefaultCellStyle = objellStyle;
        }
        public static string GetDayOfWeekName(this PersianCalendar persianCalendar, string persianDate)
        {
            string   dayOfWeek = "";
            DateTime date      = ConvertToGregorian(persianCalendar, persianDate);

            switch (date.DayOfWeek)
            {
            case System.DayOfWeek.Sunday:
                dayOfWeek = "یک شنبه";
                break;

            case System.DayOfWeek.Monday:
                dayOfWeek = "دوشنبه";
                break;

            case System.DayOfWeek.Tuesday:
                dayOfWeek = "سه شنبه";
                break;

            case System.DayOfWeek.Wednesday:
                dayOfWeek = "چهار شنبه";
                break;

            case System.DayOfWeek.Thursday:
                dayOfWeek = "پنج شنبه";
                break;

            case System.DayOfWeek.Friday:
                dayOfWeek = "جمعه";
                break;

            case System.DayOfWeek.Saturday:
                dayOfWeek = "شنبه";
                break;
            }
            return(dayOfWeek);
        }
Beispiel #32
0
        public string GetMonthName(DateTime date)
        {
            PersianCalendar jc    = new PersianCalendar();
            string          pdate = string.Format("{0:0000}/{1:00}/{2:00}", jc.GetYear(date), jc.GetMonth(date), jc.GetDayOfMonth(date));

            string[] dates = pdate.Split('/');
            int      month = Convert.ToInt32(dates[1]);

            switch (month)
            {
            case 1: return("فررودين");

            case 2: return("ارديبهشت");

            case 3: return("خرداد");

            case 4: return("تير‏");

            case 5: return("مرداد");

            case 6: return("شهريور");

            case 7: return("مهر");

            case 8: return("آبان");

            case 9: return("آذر");

            case 10: return("دي");

            case 11: return("بهمن");

            case 12: return("اسفند");

            default: return("");
            }
        }
Beispiel #33
0
        public static bool IsValidPersianDate(int persianYear, int persianMonth, int persianDay)
        {
            if (persianDay > 31 || persianDay <= 0)
            {
                return(false);
            }

            if (persianMonth > 12 || persianMonth <= 0)
            {
                return(false);
            }

            if (persianMonth <= 6 && persianDay > 31)
            {
                return(false);
            }

            if (persianMonth >= 7 && persianDay > 30)
            {
                return(false);
            }

            if (persianMonth != 12)
            {
                return(true);
            }

            var persianCalendar = new PersianCalendar();
            var isLeapYear      = persianCalendar.IsLeapYear(persianYear);

            if (isLeapYear && persianDay > 30)
            {
                return(false);
            }

            return(isLeapYear || persianDay <= 29);
        }
        public static DateTime ConvertToGregorian(this PersianCalendar persianCalendar, string persianDate)
        {
            if (!IsValidDate(persianCalendar, persianDate))
            {
                throw new ArgumentException();
            }
            try
            {
                string[] dateSegments = persianDate.Split('/');
                int      year         = 0;
                if (dateSegments[0].Length == 4)
                {
                    int.TryParse(dateSegments[0], out year);
                }

                int month = 0;
                if (dateSegments[1].Length <= 2 && dateSegments[1].Length > 0)
                {
                    int.TryParse(dateSegments[1], out month);
                }

                int day = 0;
                if (dateSegments[2].Length <= 2 && dateSegments[2].Length > 0)
                {
                    int.TryParse(dateSegments[2], out day);
                }
                if (day == 0 || month == 0 || year == 0)
                {
                    throw new ArgumentException();
                }
                return(new DateTime(year, month, day, new PersianCalendar()));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public int insertContractual()
        {
            PersianCalendar pc = new PersianCalendar();

            string m = pc.GetYear(DateTime.Now).ToString() + "/" + pc.GetMonth(DateTime.Now).ToString() + "/" + pc.GetDayOfMonth(DateTime.Now);

            string CommandText = "INSERT_PER_CONTRACTUAL";

            com.Parameters.AddWithValue("@name", Name);
            com.Parameters.AddWithValue("@family", Family);
            com.Parameters.AddWithValue("@num_Este", Num_Este);
            com.Parameters.AddWithValue("@salar", Salar);
            com.Parameters.AddWithValue("@iden", Iden);
            com.Parameters.AddWithValue("@meli", Meli);
            com.Parameters.AddWithValue("@born", Born);
            com.Parameters.AddWithValue("@W_born", w_born);
            com.Parameters.AddWithValue("@ex_ostan", Ex_ostan);
            com.Parameters.AddWithValue("@ex_sharstan", Ex_sharstan);
            com.Parameters.AddWithValue("@w_Doc", W_Doc);
            com.Parameters.AddWithValue("@trai", Trai);
            com.Parameters.AddWithValue("@ser_ostan", Ser_ostan);
            com.Parameters.AddWithValue("@ser_sharstan", Ser_sharstan);
            com.Parameters.AddWithValue("@organ", Organ);
            // com.Parameters.AddWithValue("@date_Start", Date_Start);
            // com.Parameters.AddWithValue("@date_End", Date_End);
            com.Parameters.AddWithValue("@situ", Situ);
            com.Parameters.AddWithValue("@degree", Degree);
            com.Parameters.AddWithValue("@marr", Marr);
            com.Parameters.AddWithValue("@child", Child);
            com.Parameters.AddWithValue("@pic", Pic);
            com.Parameters.AddWithValue("@mobile", Mobile);
            com.Parameters.AddWithValue("@sex", Sex);
            com.Parameters.AddWithValue("@date_reg", m);
            com.Parameters.AddWithValue("@father", Father);
            com.Parameters.AddWithValue("@base", Base);
            return(command(CommandText));
        }
Beispiel #36
0
        public void QuickOnLineTask(object sender, ElapsedEventArgs args)
        {
            string trace = "0";
            bool   RefQuickNewVinOnlineSync = false;

            try
            {
                //run every 4 min
                RefQuickNewVinOnlineSync = ldbRefresh.GenerateQCCaridDetailsOnlineSync(1);

                trace += "1";
                bool RefQccasttArchive = ldbRefresh.RefreshLdbASPQCCASTT(true);
                //trace += "2->"+ RefQccasttArchive.ToString();
                //LogManager.SetWindowsServiceLog("OnArchivePS cache db= " +  RefRsltAC + RefRsltAG);
                DateTime        dtN    = DateTime.Now;
                PersianCalendar pc     = new PersianCalendar();
                string          Y      = pc.GetYear(dtN).ToString();
                string          M      = pc.GetMonth(dtN).ToString().PadLeft(2, '0');
                string          D      = pc.GetDayOfMonth(dtN).ToString().PadLeft(2, '0');
                string          NowDay = Y + M + D;
                trace += "3";
                if (NowDay != strArchiveRunDay)
                {
                    trace                  += "4";
                    strArchiveRunDay        = NowDay;
                    PSArchiveTimer          = new Timer();
                    PSArchiveTimer.Interval = TimeSpan.FromSeconds(5).TotalMilliseconds;;
                    PSArchiveTimer.Elapsed += new ElapsedEventHandler(this.OnArchivePS);
                    PSArchiveTimer.Start();
                    trace += "5";
                }
            }
            catch (Exception ex)
            {
                LogManager.SetWindowsServiceLog("QuickOnLineTask_" + trace + "_RefQuickNewVinOnlineSync:" + RefQuickNewVinOnlineSync + "_" + ex.Message.ToString());
            }
        }
Beispiel #37
0
        public static DateTime ConvertToGregorian(string _DateTime)
        {
            try
            {
                _DateTime = _DateTime.Trim();
                PersianCalendar _PersianCalendar = new PersianCalendar();
                int             xYear            = _DateTime.Substring(0, 4).ToInt();
                int             xMonth           = _DateTime.Substring(5, 2).ToInt();
                int             xDay             = _DateTime.Substring(8, 2).ToInt();

                int xHour   = 0;
                int xMinute = 0;
                int xSecond = 0;
                if (_DateTime.Split(' ').Length > 1)
                {
                    var xTime = _DateTime.Split(' ')[1].Split(':');
                    xHour   = xTime[0].ToInt();
                    xMinute = xTime[1].ToInt();
                    xSecond = xTime[2].ToInt();
                }

                DateTime _GregorianDate = _PersianCalendar.ToDateTime(
                    xYear,
                    xMonth,
                    xDay,
                    xHour,
                    xMinute,
                    xSecond,
                    0
                    );
                return(_GregorianDate);
            }
            catch (Exception ex)
            {
                return(DateTime.MinValue);
            }
        }
Beispiel #38
0
        public static List <string> GetCalenderOfMounth(DateTime date)
        {
            List <string> calender = new List <string>();

            PersianCalendar pc = new PersianCalendar();
            var             s  = pc.GetMonth(date);

            if (pc.GetMonth(date) <= 6)
            {
                for (int i = 1; i <= 31; i++)
                {
                    calender.Add(pc.GetYear(date) + "/" + pc.GetMonth(date) + "/" + i);
                }
            }
            if (pc.GetMonth(date) >= 7 && pc.GetMonth(date) <= 11)
            {
                for (int i = 1; i <= 30; i++)
                {
                    calender.Add(pc.GetYear(date) + "/" + pc.GetMonth(date) + "/" + i);
                }
            }
            if (pc.GetMonth(date) == 12 && pc.IsLeapYear(pc.GetYear(date)))
            {
                for (int i = 1; i <= 30; i++)
                {
                    calender.Add(pc.GetYear(date) + "/" + pc.GetMonth(date) + "/" + i);
                }
            }
            if (pc.GetMonth(date) == 12 && !pc.IsLeapYear(pc.GetYear(date)))
            {
                for (int i = 1; i <= 29; i++)
                {
                    calender.Add(pc.GetYear(date) + "/" + pc.GetMonth(date) + "/" + i);
                }
            }
            return(calender);
        }
Beispiel #39
0
 public static List <ProductStatistics> GetArchiveLdbProductStatistics(int FromLastDay)
 {
     try
     {
         string          Y, M, D;
         DateTime        dtOldDay = DateTime.Now.AddDays(-FromLastDay);
         PersianCalendar pc       = new PersianCalendar();
         Y = pc.GetYear(dtOldDay).ToString();
         M = pc.GetMonth(dtOldDay).ToString().PadLeft(2, '0');
         D = pc.GetDayOfMonth(dtOldDay).ToString().PadLeft(2, '0');
         string strFromLastDayCondition = Y + "/" + M + "/" + D;
         //LogManager.SetCommonLog("GetArchiveLdbProductStatistics start");
         List <ProductStatistics> lstPS = new List <ProductStatistics>();
         // generate new statistic
         //List<ProductStatistics> lstNewPS = StatisticsActs.GetYearProdStatistics();
         // get instanse of ldb
         LiteDatabase db = new LiteDatabase(ldbConfig.ldbArchiveConnectionString);
         // get old ldb ps lst
         LiteCollection <ProductStatistics> dbPS = db.GetCollection <ProductStatistics>("ProductStatistics");
         // Get old lst
         if (dbPS.Count() != 0)
         {
             foreach (var item in dbPS.Find(Query.GT("ProdDateFa", strFromLastDayCondition)))
             {
                 lstPS.Add(item);
             }
         }
         // insetr new lst
         //LogManager.SetCommonLog("GetArchiveLdbProductStatistics="+ dbPS.Count());
         return(lstPS);
     }
     catch (Exception ex)
     {
         LogManager.SetCommonLog("GetArchiveLdbProductStatistics_Error_" + ex.Message.ToString());
         return(null);
     }
 }
        private string Convert(PersianDateFormat format = PersianDateFormat.ShortDate)
        {
            var pc        = new PersianCalendar();
            var dayNum    = pc.GetDayOfMonth(DateValue);
            var monthNum  = pc.GetMonth(DateValue);
            var monthName = _months[monthNum];
            var year      = pc.GetYear(DateValue);
            var time      = $"{DateValue.Date.Hour}:{DateValue.Date.Minute}";
            var dayName   = _weekDayNames[DateValue.DayOfWeek];

            switch (format)
            {
            case PersianDateFormat.Day_MonthName_Year:
                return($"{dayNum} {monthName} {year}");

            case PersianDateFormat.Day_MonthName_Year_Time:
                return($"{dayNum} {monthName} {year} {time}");

            case PersianDateFormat.LongDate:
                return($"{dayNum}/{monthNum}/{year} {time}");

            case PersianDateFormat.ShortDate:
                return($"{dayNum}/{monthNum}/{year}");

            case PersianDateFormat.WeekName_LongDate:
                return($"{dayName} {dayNum}/{monthNum}/{year} {time}");

            case PersianDateFormat.WeekName_Day_MonthName_Year:
                return($"{dayName} {dayNum} {monthName} {year}");

            case PersianDateFormat.WeekName_Day_MonthName_Year_Time:
                return($"{dayName} {dayNum} {monthName} {year} {time}");

            default:
                return($"{dayNum}/{monthNum}/{year}");
            }
        }
Beispiel #41
0
        public static DateTime?ConvertJalaliDate8CharToDateTime(string dateTimeStr)
        {
            try
            {
                if (String.IsNullOrWhiteSpace(dateTimeStr) ||
                    String.IsNullOrEmpty(dateTimeStr) ||
                    dateTimeStr.Length != 8)
                {
                    return(null);
                }

                var persianCalander = new PersianCalendar();
                var yearStr         = dateTimeStr.Substring(0, 4);
                var monthStr        = dateTimeStr.Substring(4, 2);
                var dayStr          = dateTimeStr.Substring(6, 2);



                var year  = persianCalander.GetYear(DateTime.Now);
                var month = persianCalander.GetMonth(DateTime.Now);
                var day   = persianCalander.GetDayOfMonth(DateTime.Now);
                if (!int.TryParse(yearStr, out year) ||
                    !int.TryParse(monthStr, out month) ||
                    !int.TryParse(dayStr, out day))
                {
                    return(null);
                }

                var persianCalendar = new PersianCalendar();

                return(persianCalendar.ToDateTime(year, month, day, 0, 0, 0, 0));
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
        /// <summary>
        /// دریافت نام روز از تاریخ
        /// </summary>
        /// <param name="Date">تاریخ مورد نظر</param>
        /// <returns>نام روز مانند دو شنبه</returns>
        public static string GetDayName(this DateTime Date)
        {
            PersianCalendar pc      = new PersianCalendar();
            string          dayName = "";

            switch (pc.GetDayOfWeek(DateTime.Now))
            {
            case DayOfWeek.Friday:
                dayName = "جمعه";
                break;

            case DayOfWeek.Monday:
                dayName = "دوشنبه";
                break;

            case DayOfWeek.Saturday:
                dayName = "شنبه";
                break;

            case DayOfWeek.Sunday:
                dayName = "یکشنبه";
                break;

            case DayOfWeek.Thursday:
                dayName = "پنج شنبه";
                break;

            case DayOfWeek.Tuesday:
                dayName = "سه شنبه";
                break;

            case DayOfWeek.Wednesday:
                dayName = "چهار شنبه";
                break;
            }
            return(dayName);
        }
Beispiel #43
0
        public static string MiladiToShamsi(DateTime dateM)
        {
            try
            {
                if (dateM.Year > 2500 || dateM.Year < 1500)
                {
                    return("");
                }
                var ret = "";

                var persianCalendar = new PersianCalendar();
                if (persianCalendar.GetMonth(dateM) >= 10)
                {
                    ret = persianCalendar.GetYear(dateM) + "/" + persianCalendar.GetMonth(dateM);
                }
                else
                {
                    ret = persianCalendar.GetYear(dateM) + "/0" + persianCalendar.GetMonth(dateM);
                }

                if (persianCalendar.GetDayOfMonth(dateM) >= 10)
                {
                    ret += "/" + persianCalendar.GetDayOfMonth(dateM);
                }
                else
                {
                    ret += "/" + "0" + persianCalendar.GetDayOfMonth(dateM);
                }
                return(ret);
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
                return(null);
            }
        }
Beispiel #44
0
        [Test, Timeout(300000)] // Can take a long time under NCrunch.
        public void BclThroughHistory()
        {
            Calendar       bcl  = new PersianCalendar();
            CalendarSystem noda = CalendarSystem.GetPersianCalendar();

            for (int year = 1; year < 9378; year++)
            {
                for (int month = 1; month < 13; month++)
                {
                    Assert.AreEqual(bcl.GetDaysInMonth(year, month), noda.GetDaysInMonth(year, month),
                                    "Year: {0}; Month: {1}", year, month);
                    for (int day = 1; day < bcl.GetDaysInMonth(year, month); day++)
                    {
                        DateTime  bclDate  = new DateTime(year, month, day, bcl);
                        LocalDate nodaDate = new LocalDate(year, month, day, noda);
                        Assert.AreEqual(bclDate, nodaDate.AtMidnight().ToDateTimeUnspecified());
                        Assert.AreEqual(nodaDate, LocalDateTime.FromDateTime(bclDate).WithCalendar(noda).Date);
                        Assert.AreEqual(year, nodaDate.Year);
                        Assert.AreEqual(month, nodaDate.Month);
                        Assert.AreEqual(day, nodaDate.Day);
                    }
                }
            }
        }
Beispiel #45
0
        public static string GetPersianDateWithTime(this DateTime helper)
        {
            string format = "yyyy/mm/dd hh:jj:ss";

            if (helper.Year < 1000)
            {
                helper = DateTime.Now;
            }
            PersianCalendar pc = new PersianCalendar();

            StringBuilder result = new StringBuilder(format.ToLower());

            result = result.Replace("hh", helper.Hour.ToString());
            result = result.Replace("jj", helper.Minute.ToString());
            result = result.Replace("ss", helper.Second.ToString());

            result = result.Replace("yyyy", pc.GetYear(helper).ToString());

            result = result.Replace("mm", pc.GetMonth(helper).ToString("00"));

            result = result.Replace("dd", pc.GetDayOfMonth(helper).ToString("00"));

            return(result.ToString());
        }
    public static SqlString GregorianToJalali(DateTime?dateTime, string format)
    {
        if (!dateTime.HasValue)
        {
            return(null);
        }

        var pc = new PersianCalendar();

        try
        {
            var year       = pc.GetYear(dateTime.Value);
            var month      = pc.GetMonth(dateTime.Value);
            var dayOfMonth = pc.GetDayOfMonth(dateTime.Value);
            var dayOfWeek  = pc.GetDayOfWeek(dateTime.Value);

            var result = "";

            result = FormatSeconds(format, dateTime.Value);
            result = FormatMinutes(result, dateTime.Value);
            result = FormatHours(result, dateTime.Value);
            result = FormatDesignator(result, dateTime.Value);

            result = FormatYears(result, year);
            result = FormatMonths(result, month);
            result = FormatDays(result, dayOfMonth, dayOfWeek);

            return(result);
        }
        catch (Exception e)
        {
            return(e.ToString());
        }

        return(null);
    }
Beispiel #47
0
 public void TwoDigitYearMax_Set(int newTwoDigitYearMax)
 {
     PersianCalendar calendar = new PersianCalendar();
     calendar.TwoDigitYearMax = newTwoDigitYearMax;
     Assert.Equal(newTwoDigitYearMax, calendar.TwoDigitYearMax);
 }
Beispiel #48
0
    public DateTime GetDateTime(string year, string month, string day)
    {
        int Year = Convert.ToInt32(year);
        int Month = Convert.ToInt32(month);
        int Day = Convert.ToInt32(day);

        PersianCalendar pc2 = new PersianCalendar();

        DateTime Date = pc2.ToDateTime(Year, Month, Day, 0, 0, 0, 0);
        //DateTime Date = Convert.ToDateTime(dt);
        return Date;

    }
    public static SqlString DATEADDPersian(string datepart, int number, string date)
    {
        try
        {
            PersianCalendar objPersianCalendar = new PersianCalendar();

            DateTime PersianDate = new DateTime();

            string result = "";

            string[] date_spilt = date.Split('/');

            if (datepart == Date_part.YEAR.ToString())
            {
                PersianDate = objPersianCalendar.AddYears(objPersianCalendar.ToDateTime(int.Parse(date_spilt[0]), int.Parse(date_spilt[1]), int.Parse(date_spilt[2]), 0, 0, 0, 0), number);
            }
            else if (datepart == Date_part.DAY.ToString())
            {
                PersianDate = objPersianCalendar.AddDays(objPersianCalendar.ToDateTime(int.Parse(date_spilt[0]), int.Parse(date_spilt[1]), int.Parse(date_spilt[2]), 0, 0, 0, 0), number);
            }


            result = string.Format("{0}/{1}/{2}", objPersianCalendar.GetYear(PersianDate).ToString().PadLeft(4, '0'), objPersianCalendar.GetMonth(PersianDate).ToString().PadLeft(2, '0'), objPersianCalendar.GetDayOfMonth(PersianDate).ToString().PadLeft(2, '0'));

            return new SqlString(result);
        }
        catch (Exception e)
        {
            return SqlString.Null;
        }

    }
Beispiel #50
0
 public static string ToPersianDateTime(object date)
 {
     string result = null;
     if (date != null)
     {
         DateTime dt = (DateTime)date;
         PersianCalendar objPersianCalendar = new PersianCalendar();
         int year = objPersianCalendar.GetYear(dt);
         int month = objPersianCalendar.GetMonth(dt);
         int day = objPersianCalendar.GetDayOfMonth(dt);
         int hour = objPersianCalendar.GetHour(dt);
         int minute = objPersianCalendar.GetMinute(dt);
         result = string.Format("{0}/{1}/{2}  {3}:{4}", year, month, day, hour, minute);
     }
     return result;
 }
    public static SqlBoolean ISDATEPersian(string date)
    {
        try
        {
            if (Regex.IsMatch(date, @"^(\d{4}\/(0[1-9]|1[012])\/(0[1-9]|[12][0-9]|3[01]))"))
            {
                PersianCalendar objPersianCalendar = new PersianCalendar();

                DateTime Date = new DateTime();

                string[] date_spilt = date.Split('/');

                Date = objPersianCalendar.ToDateTime(int.Parse(date_spilt[0]), int.Parse(date_spilt[1]), int.Parse(date_spilt[2]), 0, 0, 0, 0);

                DateTime temp;

                if (DateTime.TryParse(Date.ToShortDateString(), out temp))
                    return true;
                else
                    return false;
            }
            else
                return false;
        }
        catch (Exception e)
        {
            return false;
        }
    }
Beispiel #52
0
 public static string ToPersianDateTime(object date)
 {
     string result = null;
     if (date != null)
     {
         DateTime dt = (DateTime)date;
         PersianCalendar objPersianCalendar = new PersianCalendar();
         int year = objPersianCalendar.GetYear(dt);
         int month = objPersianCalendar.GetMonth(dt);
         int day = objPersianCalendar.GetDayOfMonth(dt);
         int hour = objPersianCalendar.GetHour(dt);
         int min = objPersianCalendar.GetMinute(dt);
         int sec = objPersianCalendar.GetSecond(dt);
         result = string.Concat(year.ToString().PadLeft(4, '0'), DateTimeFormatInfo.CurrentInfo.DateSeparator, month.ToString().PadLeft(2, '0'), DateTimeFormatInfo.CurrentInfo.DateSeparator, day.ToString().PadLeft(2, '0'), " ", hour.ToString().PadLeft(2, '0'), DateTimeFormatInfo.CurrentInfo.TimeSeparator, min.ToString().PadLeft(2, '0'));
     }
     return result;
 }
    public static SqlInt32 DATEDIFFPersian(string datepart, string date_from, string date_to)
    {
        try
        {
            PersianCalendar objPersianCalendar = new PersianCalendar();

            DateTime PersianDate_from = new DateTime();
            DateTime PersianDate_to = new DateTime();

            string[] date_from_spilt = date_from.Split('/');
            string[] date_to_spilt = date_to.Split('/');


            if (datepart == Date_part.DAY.ToString())
            {
                PersianDate_from = objPersianCalendar.ToDateTime(int.Parse(date_from_spilt[0]), int.Parse(date_from_spilt[1]), int.Parse(date_from_spilt[2]), 0, 0, 0, 0);
                PersianDate_to = objPersianCalendar.ToDateTime(int.Parse(date_to_spilt[0]), int.Parse(date_to_spilt[1]), int.Parse(date_to_spilt[2]), 0, 0, 0, 0);
            }

            //int days = DateDiff(datepart, PersianDate_from, PersianDate_to)

            return (SqlInt32)(PersianDate_to - PersianDate_from).TotalDays;
        }
        catch (Exception e)
        {
            return SqlInt32.Null;
        }
    }
Beispiel #54
0
 public void GetMonthsInYear(int year, int expected)
 {
     PersianCalendar calendar = new PersianCalendar();
     Assert.Equal(expected, calendar.GetMonthsInYear(year));
     Assert.Equal(expected, calendar.GetMonthsInYear(year, 0));
     Assert.Equal(expected, calendar.GetMonthsInYear(year, 1));
 }
Beispiel #55
0
 public void ToFourDigitYear(int year, int expected)
 {
     PersianCalendar calendar = new PersianCalendar();
     calendar.TwoDigitYearMax = 1410; // Set to the default
     Assert.Equal(expected, calendar.ToFourDigitYear(year));
 }