در این پروژه ما تبدیل تاریخ شمسی به میلادی را انجام میدهیم ، پروژه به زبان سی شارپ است و به صورت سورس کامل در این مطلب منتشر کردیم.داستان انجام این پروژه به گونه ای بود که پروژه بسیار قدیمی داشتیم داده های تاریخ آن به صورت رشته ذخیره میشد و در آخرین اپدیت و ویژگی های جدید پروژه این امکان وجود نداشت که برخی محاسبات را به صورت دقیق انجام دهیم مجبور به تبدیل تاریخ های شمسی در دیتابیس شدیم.
یک پروژه نوشتیم و به صورت خیلی ساده کلیه دیتاهای بانک اطلاعاتی را به تاریخ شمسی و فرمت درست آن تبدیل کردیم تا عملیات مد نظر خود را به درستی انحام دهیم.
تبدیل تاریخ شمسی به میلادی
تبدیل تاریخ ها را با کلاس PersianCalendar انجام دایدم و تبدیل آن را در دیتابیس با کوئری های linq ذخیره و بازیابی کردیم.
PersianCalendar c = new PersianCalendar(); foreach (var row in radGridView1.Rows) { var Date = DateTime.Parse(row.Cells[2].Value.ToString()); int ID = int.Parse(row.Cells[0].Value.ToString()); DateTime date = c.ToDateTime(Date.Year, Date.Month, Date.Day, 0, 0, 0, 0); var date1 = date.ToString("yyyy-MM-dd"); var product = (from u in db.Order where u.IDOrder == ID select u).First(); product.data = date1; db.SaveChanges(); System.Threading.Thread.Sleep(100); }
فقط با یک تابع ساده این کار امکان پذیره که خیلی شما هم میتونید این کارو انجام بدید.دواقع عملیات اصلی را کد زیر انجام میدهد.
DateTime date = c.ToDateTime(Date.Year, Date.Month, Date.Day, 0, 0, 0, 0);
یک نمونه پروژه در محیط و یک نمونه در محیط کنسول براتون ضمیمه کردیم که امیدورام استفاده کنید.اگر سوالی داشتید حتما مطرح کنید.
هیچ دیدگاهی برای این محصول نوشته نشده است.