سلام در حال کار کردن روی پروژه ای هستم که در قسمت های مختلف از امکانات خود سایت گرفته تا پنل کاربری و پنل مدیریت بارها و بارها از کاربر تاریخ را دریافت میکنیم .



همونطور که میدونید در تبدیل تاریخ شمسی به میلادی به خاطر اختلاف در تعداد روز تقویمی (یک روز اختلاف) در تبدیل تاریخ ها مشکل ایجاد میشود و همینطور در تبدیل زمان .



و واضح تربخوام توضیح بدم اگه تاریخ و زمان رو بصورت شمسی از کاربر بگیرم و در پایگاه داده ذخیره کنیم دربازخوانی ممکن است(دراختلاف زمانی یک سال) تاریخ یک روز تغییر کند و ساعت هم طبیعتا همیشه تغییر میکند.



برای تبدیل تاریخ به میلادی و بلعکس و یا تاریخ بصورت نمایش روزِهفته و به صورت رشته ای و ... من از Dll زیر استفاده میکنم :

PersianDateTime.dll
که قابلیت هایی مثل موارد زیر را دارد (البته خیلی بیشتر از این):



مورد خیلی مهم زمانی است که تاریخ و زمان باید با هم دریافت شوند و در یک فیلد ذخیره شوند .


سوالات :
1 - در جاهایی که با تاریخ و زمان سروکار داریم (ثبت تاریخ جاری سیستم یا دریافت از کاربر) بنظرتون بهتره که قبل ذخیره در جدول اون رو به میلادی تبدیل کرده و بعدا در زمان بازخوانی و نمایش اون رو دوباره به Persian تبدیل کنیم ؟ این شیوه بنظرتون صحیح است ؟





2 - بهترین شیوه برای ذخیره تاریخ و زمان(بصورت کامل) در پایگاه داده چیست ؟
بنظرتون تاریخ و زمان رو در دو فیلد جدا از هم در دیتابیس درنظر بگیرم و تاریخ و زمان رو جدا در اون ها ذخیره کنم و یا استفاده از یک فیلد فقط datetime بهتر است ؟




3 -برای دریافت تاریخ و زمان از کاربر بصورت دریافت سال و ماه و روز و زمان در TextBox های جدا چه پیشهادی رو دارید؟
نظرم الان اینه که برای هرکدوم یک TextBox بگذارم و در سمت اکشن بصورت پارامتر دریافت کردن سپس بصورت زیر میشه اون رو بصورت یک datetime کامل درآورد :