PDA

View Full Version : سوال: ساخت آرشیو خبری به این صورت !!!



Shamim832
دوشنبه 03 آبان 1389, 22:54 عصر
دوستان عزیز سلام ، یه سوالی داشتم که اگه پاسخ بدید ممنون میشم
من برای قسمت خبر می خواستم آرشیوخبر بزارم به این شکل که امکان سرچ هم داشته باشه :
59032
سوالم اینه که چون جستجو براساس تاریخ ارسال خبرصورت می گیره ، من فیلد تاریخ ارسال خبر رو ازچه نوعی تعریف کنم ؟ازنوع Datetime ؟ چون عملیات سرچ روش صورت می گیره؟ من این کار روکردم به این صورت :
59033

ولی چطوری میتونم با فیلدی که سال ،ماه وروز رو باهم ذخیره میکنه عمل سرچ رو انجام بدم ؟آیا تاریخ باید به صورت شمسی ذخیره بشه یا قمری ؟ کلا میتونید دقیق وقدم به قدم توضیح بدیدبرای ساخت چنین آرشیوی چکارباید بکنم؟
باتشکر

pedram_ns
دوشنبه 03 آبان 1389, 23:23 عصر
بله نوع فیلد تون رو در دیتابیس تاریخ در نظر می گیرید و تاریخ خبر رو هم بصورت شمسی در اون ذخیره می کنید.

در قسمت سرچتون هم روز و سال رو که دارید در droplist ماه هم برای هر مقدار value رو برابر با عدد اون ماه تعیین می کنید(یعنی مهر ماه رو برایر با value هفت می گیرید)

حالا در رویداد دکمه سرچ این مقادیر(روز و ماه و سال) رو با هم ترکیب می کنید و بر اساس این مقدار در مقایسه با فیلد ذخیره تاریخ در دیتابیس، در خبرها جستجو انجام می دید.

raziee
دوشنبه 03 آبان 1389, 23:29 عصر
تاریخ رو به صورت میلادی ذخیره کنید.
برای جستجو هم تاریخ شمسی رو به تاریخ میلادی تبدیل کنید و سپس جستجو کنید.
در مورد PersianCalendar و System.Globalization جستجو کنید

unishomal
سه شنبه 04 آبان 1389, 00:08 صبح
دوستان عزیز سلام ، یه سوالی داشتم که اگه پاسخ بدید ممنون میشم
من برای قسمت خبر می خواستم آرشیوخبر بزارم به این شکل که امکان سرچ هم داشته باشه :
59032
سوالم اینه که چون جستجو براساس تاریخ ارسال خبرصورت می گیره ، من فیلد تاریخ ارسال خبر رو ازچه نوعی تعریف کنم ؟ازنوع Datetime ؟ چون عملیات سرچ روش صورت می گیره؟ من این کار روکردم به این صورت :
59033

ولی چطوری میتونم با فیلدی که سال ،ماه وروز رو باهم ذخیره میکنه عمل سرچ رو انجام بدم ؟آیا تاریخ باید به صورت شمسی ذخیره بشه یا قمری ؟ کلا میتونید دقیق وقدم به قدم توضیح بدیدبرای ساخت چنین آرشیوی چکارباید بکنم؟
باتشکر



به نظر من بهتره از نوع string استفاده کنی

اولین چیزی که نیاز داری این کلاس که از طریق اون میتونی تاریخ بگیری...

بهتر روز ماه و سالو جداگانه ذخیره کنی تا راحت روش کویری بزنی،واسه این کارم میتونی از substring روی خروجی متد ReturnDate استفاده کنی،

حواست باشه وقتی تاریخو از ورودی میخونی اول trim کنی مقدارو بعد ازش استفاده کنی


textbox1.text.trim();


موفق باشید.

majnun
سه شنبه 04 آبان 1389, 00:28 صبح
با استفاده از این هدر :


using System.Globalization;


این کد من تاریخ شمسی حال رو میگیرم


PersianCalendar pc = new PersianCalendar();
datee = pc.GetYear(DateTime.Now).ToString() + "/" + pc.GetMonth(DateTime.Now).ToString() + "/" + pc.GetDayOfMonth(DateTime.Now).ToString();



حالا شما تاریخ میلادی رو بخون اینجوری به شمسی تبدیل کن دیگه ...

maxpayn2
سه شنبه 04 آبان 1389, 08:56 صبح
با جناب raziee (http://www.barnamenevis.org/forum/member.php?u=95909) موافقم

Shamim832
سه شنبه 04 آبان 1389, 10:05 صبح
سلام دوستان عزیز:ازپاسخ همه بسیار بسیار ممنونم
ولی هرکدومتون یه نظری دارین بالاخره بهترین واستانداردترین روش کدومه؟؟؟
جستجو بین دوبازه زمانی رو چطوری انجام بدم ؟

raziee
سه شنبه 04 آبان 1389, 11:36 صبح
ولی هرکدومتون یه نظری دارین بالاخره بهترین واستانداردترین روش کدومه؟؟؟
جستجو بین دوبازه زمانی رو چطوری انجام بدم ؟
برای ثبت تاریخ مناسب ترین راه (البته از نظر بنده) ذخیره به صورت میلادی هست.
بعد از ذخیره سازی به صورت میلادی امکان پردازش روی این داده فراهم میشه.

بله نوع فیلد تون رو در دیتابیس تاریخ در نظر می گیرید و تاریخ خبر رو هم بصورت شمسی در اون ذخیره می کنید.
نمیدونستم میشه تو فیلدی با نوع DateTime مقدار تاریخ شمسی رو ذخیره کرد.
فکر کنم تاریخ شمسی مثلا 1389 برای ثبت در DateTime یک تاریخ نامعتبر باشه!!


به نظر من بهتره از نوع string استفاده کنی
:متفکر: عجب!!

Amir Taghavi
سه شنبه 04 آبان 1389, 15:51 عصر
شمسی بگیر میلادی ذخیره کن!
شما بهتره برای هر موضوع فقط یه تاپیک ایجاد کنی!!! تو اون یکی تاپیک(!) (http://barnamenevis.org/forum/showthread.php?p=1136721&posted=1#post1136721) روال کار رو توضیح دادم!