سلام من یک سیستم دارم که از کاربر تاریخ شمسی میگیرم بعد تبدیل به میلادی میکنم و بعد در دیتابیس ذخیره میکنم
برنامه هیچ مشکلی نداره و کاملا نرمال داره عمل میکنه
فقط بعضی تاریخ ها مثل 1393/02/31 وقتی وارد میشه برنامه بهم میریزه و خطا رخ میده
من مشکل خطا رو پیدا کردم و رفع شد
مشکل از تابع تبدیل تاریخ بود که به شکل زیر تغییر دادم
public static DateTime PersianDateToGregorianDate(string pDate) { var dateParts = pDate.Split(new[] { '/' }).Select(d => int.Parse(d)).ToArray(); var hour = 0; var min = 0; var seconds = 0; return new DateTime(dateParts[0], dateParts[1], dateParts[2], hour, min, seconds, new PersianCalendar()); }
باز هم الان وقتی من از کاربر تاریخ میگیرم وقتی تاریخ وارد مدل من میشه بهم میریزه و باز هم خطا رخ میده
ولی اگر مدل پر نکنم هیچ مشکلی وجود نداره
متن خطا را ضمیمه کنید
خطای خاصی نداره از برنامه خارج میشه و متوقف میشه
من مشکل حل کردم شما به من بگین که چطوری میتونم موقع set شدن و ذخیره شدن در دیتابیس تابع PersianDateToGregorianDate فراوخوانی کنم و همون لحظه تاریخ از شمسی به میلادی تغییر بدم
اگر متد هست فراخوانی کنید و مقدار را در پارامتر مربوطه قرار دهید
من میخوام قبل از اینکه ابجکت پر بشه تاریخ تبدیل کنم
چون اگر این کارو نکنم فیلد تعریف شده در ابجکت مقدار 0001/01/01 برمیگردونه این مشکل فقط برای تاریخ 1393/02/31
هست
عرض کردم
میتونید قبل از آبجکت یک مقدار را تبدیل کنید و بعد در آبجکت قرار دهید
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)