PDA

View Full Version : مبتدی: کمک ذخیره تاریخ شمسی در دیتابیس



Ehsan_hetfield
شنبه 16 مرداد 1389, 13:41 عصر
سلام جون هرکی دوست دارید کمک کنید یک کد یا هرچی که کامل باشه برای تبدیل تاریخ میلادی به شمسی میخوام هی هم نگید میلادی بریز شمسی بخون تکست باکس من هم از نوع datetime هست فقط کد بدین تورو خدا

MSN_Issue
شنبه 16 مرداد 1389, 13:47 عصر
امیدوارم به دردت بخوره :

PersianCalendar PrsClnd = new PersianCalendar();
DateTime DT = DateTime.Now;
string Year;
string Month;
string Day;
Year = PrsClnd.GetYear(DT).ToString();
Month = PrsClnd.GetMonth(DT).ToString();
Day = PrsClnd.GetDayOfMonth(DT).ToString();
string ds = "" + Year + '/' + Month + '/' + Day;

mostafa_shoakry
شنبه 16 مرداد 1389, 13:53 عصر
اینم یه تابع که میلادی رو به شمسی تبدیل میکنه.


public string Miladi2Shamsi(DateTime _date)
{
PersianCalendar pc = new PersianCalendar();
StringBuilder sb = new StringBuilder();
sb.Append(pc.GetYear(_date).ToString("00"));
sb.Append("/");
sb.Append(pc.GetMonth(_date).ToString("00"));
sb.Append("/");
sb.Append(pc.GetDayOfMonth(_date).ToString("00"));
return sb.ToString();
}
فقط کافی اینو به صورت

string today = Miladi2Shamsi(DateTime.Now);فراخونی کنی و به جای string todat می تونی هر نوع رشته ای رو بزاری.

Ehsan_hetfield
شنبه 16 مرداد 1389, 15:01 عصر
سلام ممنون از کدها ولی اینا وقتی تو دیتابیس اینسرت میشه تاریخ رو اشتباه نشون میده
لطفا بازهم کمک کنید خیلی گیر کردم

sajadmetall
شنبه 25 شهریور 1391, 21:24 عصر
به نظر من از هیچ تابعی استفاده نکن فقط در دیتابیس فیلدی رو که میخوای توش تاریخ وارد بشه از نوع nchar(10) تعریف کن و رشته ها رو با فرمت خاص خودت توش اینسرت کن طوری که بعدا بتونی تو جمع و تفریقا فقط با یک تبدیل نوع ازشون استفاده کنی...

danialafshari
یک شنبه 26 شهریور 1391, 01:52 صبح
مشکل در فیلد بانکه String یا nchar بزار و طولش رو 10 بزار مشکلت حل میشه