public static string GetPartday(string date, EnPartDate type) { try { var y = date.Substring(0, 4); var m = date.Substring(5, 2); var d = date.Substring(8, 2); switch (type) { case EnPartDate.Year: return(y); case EnPartDate.Mounth: return(m); case EnPartDate.Day: return(d); default: return(""); } } catch (Exception ex) { WebErrorLog.ErrorInstence.StartErrorLog(ex); return(null); } }
public static string AddToShamsiDate(int days, string dateSH, EnPartDate part) { try { if (dateSH.Length < 7) { return(MiladiToShamsi(DateTime.Now)); } if (dateSH.Split('/').Count() != 3) { return(MiladiToShamsi(DateTime.Now)); } dateSH = dateSH.Trim(); var y = int.Parse(dateSH.Substring(0, 4)); var m = int.Parse(dateSH.Substring(5, 2)); var d = int.Parse(dateSH.Substring(8, 2)); if (d <= 0 || d > 31) { return(MiladiToShamsi(DateTime.Now)); } if (m <= 0 || m > 12) { return(MiladiToShamsi(DateTime.Now)); } if (y.ToString().Length == 2) { y = 1300 + y; } if (y <= 1200 || y >= 1500) { return(MiladiToShamsi(DateTime.Now)); } var dateM = ShamsiToMiladi(dateSH); var addDays = 0; switch (part) { case EnPartDate.Day: addDays = days; break; case EnPartDate.Mounth: if (days < 0) { m = m - 1; } addDays = days * EndDayOfMonth((short)m, y); break; case EnPartDate.Year: return((y + days) + "/" + m.ToString("00") + "/" + d.ToString("00")); } dateM = dateM.AddDays(addDays); return(MiladiToShamsi(dateM)); } catch (Exception ex) { WebErrorLog.ErrorInstence.StartErrorLog(ex); return(null); } }