PDA

View Full Version : مشکل با تبدیل تاریخ خورشیدی به میلادی



Kurdia
چهارشنبه 03 شهریور 1389, 20:49 عصر
با سلام
مقدار تاریخ از ورودی به خورشیدی گرفته می شه
و باید با صورت رشته زخیره بشه
اما باید به میلادی تبدیل بشه و به صورت DateTime در دیتابیس ذخیره بشه
این کدها رو هم دادم
اما مشکل دارم


public static StringBuilder today(DateTime dt)
{

PersianCalendar pc = new PersianCalendar();
StringBuilder sb = new StringBuilder();
sb.Append(pc.GetYear(dt).ToString("0000"));
sb.Append('/');
sb.Append(pc.GetMonth(dt).ToString("00"));
sb.Append('/');
sb.Append(pc.GetDayOfMonth(dt).ToString("00"));
return sb;
}


int y, m, d;
PersianCalendar pc2= new PersianCalendar();
string yy="", mm="", dd="",lbl=Persia.Number.ConvertToLatin(label1.Text); //----برای تبدیل اعداد فارسی به انگلیسی
for (int i = 0; i <= 9; i++)
{
if ((i >= 0) && (i <= 3))
{
yy = yy + lbl[i];
}
if ((i >= 5) && (i <= 6))
{
mm = mm + lbl[i];
}
if ((i >= 8) && (i <= 9))
{
dd = dd + lbl[i];
}
}
y = Convert.ToInt32(yy);
m = Convert.ToInt32(mm);
d = Convert.ToInt32(dd);
PersianCalendar pc = new PersianCalendar();
DateTime dt = new DateTime (y,m ,d,pc);
label2.Text = dt.ToString("yyyy/mm/dd");

8/25/2010 12:00:00 AM رو از سیستم می گیره و به صورت 1389/06/03 نشون می ده
2010/00/25 به میلادی تبدیل می کنه
موندم چی کار کنم
وقت هم ندارم
باید به صورت yyyy/mm/dd در دیتابیس ذخیره بشه

F1! Me

mehdi5106
چهارشنبه 03 شهریور 1389, 21:21 عصر
دوست عزیز خودت رو خیلی پیچوندی...
من تو پروژه هام تاریخ رو به صورت رشته ذخیره می کنم البته به صورت کامل مثل : 1389/01/01
نیاز به تبدیل هم نداره و تو select گرفتن هم مشکلی تا حالا به وجود نیامده.
به همون شکل هم که می خوام ذخیره میشه.

irProject
چهارشنبه 03 شهریور 1389, 21:45 عصر
سلام دوست عزيز



private DateTime ShamsiToMiladi(string Date)
{
PersianCalendar pc = new PersianCalendar();
string y = Date.Substring(0, 4);
string m = Date.Substring(5, 2);
string d = Date.Substring(8, 2);

return pc.ToDateTime(int.Parse(y), int.Parse(m), int.Parse(d), 0, 0, 0, 0);
}

Kurdia
پنج شنبه 04 شهریور 1389, 14:43 عصر
دوست عزیز خودت رو خیلی پیچوندی...
من تو پروژه هام تاریخ رو به صورت رشته ذخیره می کنم البته به صورت کامل مثل : 1389/01/01
نیاز به تبدیل هم نداره و تو select گرفتن هم مشکلی تا حالا به وجود نیامده.
به همون شکل هم که می خوام ذخیره میشه.

اگر بصورت رشته ذخیره کنم
اون وقت می خوام بگردم تمامی اطلاعاتی که از تاریخ 1389/01/01 تا تاریخ 1389/05/16 هستند رو پیدا کنم
خب
بجای اینکه اونجا پوستم کنده بشه
همینجا کنده بشه تا اون موقع سریع کارم رو انجام بدم