PDA

View Full Version : Convert.ToDateTime_31



مهدی هادیان2
دوشنبه 05 تیر 1391, 19:29 عصر
بسم الله الرحمن الرحیم
با سلام
مشکل تکه کد زیر چیه؟
DateTime d;
d = Convert.ToDateTime("1391/02/31");
MessageBox.Show(d.ToString());
با تشکر

ma_barnamenevis
سه شنبه 06 تیر 1391, 10:26 صبح
البته چون اینجا انجمن sql است باید بگم convert ، datetime توی sql این فرمی است :
convert(datetime, '10/23/2016', 101)

اما کدشما که c# است درستش می شه :
DateTime d;
d = Convert.ToDateTime("2012/06/26");
MessageBox.Show(d.ToString());


می دونید که نوع defualt میلادی است و اگر بخواهین شمسی کار کنین باید از persiancalender استفاده کنید .
موفق باشید

مهدی هادیان2
جمعه 09 تیر 1391, 20:59 عصر
البته چون اینجا انجمن sql است باید بگم convert ، datetime توی sql این فرمی است :
convert(datetime, '10/23/2016', 101)

اما کدشما که c# است درستش می شه :
DateTime d;
d = Convert.ToDateTime("2012/06/26");
MessageBox.Show(d.ToString());


می دونید که نوع defualt میلادی است و اگر بخواهین شمسی کار کنین باید از persiancalender استفاده کنید .
موفق باشید
با سلام
از پاسختون ممنون
همون طور که فرمودید از persiancalendar استفاده کردم ولی متاسفانه ارور داره

string persianDate = "1391/02/31";
CultureInfo persianCulture = new CultureInfo("fa-IR");
DateTime persianDateTime = DateTime.ParseExact(persianDate, "yyyy/MM/dd", persianCulture);
MessageBox.Show(persianDateTime.ToString());
با سپاس

ma_barnamenevis
شنبه 10 تیر 1391, 09:17 صبح
ببینید نیازی نیست که شما تاریخ روز رو بصورت رشته به آن بدید فقط کافی بصورت زیر عمل کنید :
PersianCalendar vPerCal = new PersianCalendar();
string _vDateTime = vPerCal.GetYear(DateTime.Now).ToString() + "/" +
vPerCal.GetMonth(DateTime.Now).ToString() + "/" +
vPerCal.GetDayOfMonth(DateTime.Now).ToString();
MessageBox.Show(_vDateTime);