سلام
یه سری جدول تو دیتابیس دارم که اطلاعات تاریخ بصورت رشته ذخیره میکنه!
فرمت رشته بصورت زیر:
"1395/08/10"
حالا میخام همه رکوردایی که بزرگتر از تاریخ بالاست نشون بده!
خطای اولی که بهش برخوردم این بود که چون رشته ذخیره شده نمیتونم بزرگتر یا کوچکتر استفاده کنم!
دنبال تبدیل کردن رشته افتادم! با استفاده ازConvert.ToDateTime رشته رو به DateTime تبدیل کردم ظاهرا تبدیلها درست انجام شده ولی پیام خطا داشتم!
بعد یه ViewModel ساختم و تو اون دیتای مورد نظر رو DateTime در نظر گرفتم و اطلاعاتو بصورت زیر داخل ویومدلم ذخیره کردم:
var psm = new ViewModel.VacTimeSearchVM(); var q = from Vac in db.VacTimes join Org in db.TblOrganizations on Vac.OrganizationID equals Org.OrgID join vaz in db.Vaziats on Vac.Vaziat equals vaz.VaziatID join noe in db.MorakhasiType1 on Vac.VacType equals noe.MTypeID join taeid in db.Taeidkonandehs on Vac.TaeidKonandeh equals taeid.PersonID orderby Vac.VTimeID descending select new ViewModel.VacTimeSearchVM { VTimeID = Vac.VTimeID, DarkhastDate = Vac.DarkhastDate, PersonID = Vac.PersonID, PersonName = Vac.PersonName, PersonFamily = Vac.PersonFamily, OrgName = Org.OrgName, TaeidKonandeh = taeid.PersonID, VacTypeName = noe.MorTypeName, MorakhasiDate = Convert.ToDateTime(Vac.MorakhasiDate), TimeStart = Vac.TimeStart, TimeEnd = Vac.TimeEnd, TimeTotalString = Vac.TimeTotalString, TimeTotalInt = Vac.TimeTotalInt, Vaziat = vaz.VaziatName, Description = Vac.Description, VaziatID = vaz.VaziatID }; var DateS = Convert.ToDateTime(DateStart); var DateE = Convert.ToDateTime(DateEnd);
تاریخ شروع و پایان هم چون رشته بودن به DateTime تبدیل کردم و تو متغیر DateS و DateE ذخیره کردم.
بعد خط زیر رو نوشتم! ولی باز جواب نمیده و خطا دارم
q = q.Where(x => x.PersonID == ReqPersonID && x.MorakhasiDate >= DateS);
پیام خطایی که نشون میده:
باز هم مثل همیشه منتظر راهنمایی خوب شما هستم تا مشکلم برطرف بشه.
ذخیره کردن تاریخ به صورت رشته کار استباهی است
باید به صورت DateTime ذخیره کنید تا بتونید کوئری بزنید
سلام
دلیل اینکار استفاده از PersianDatePicker بود!
مرسی از راهنماییتون
مشکلی من نمیبینم
موقع ذخیره میلادی کنید و ذخیره کنید
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)