نمایش نتایج 1 تا 39 از 39

نام تاپیک: رفع مشکل جستجو از طریق تاریخ شمسی برای همیشه

  1. #1
    کاربر دائمی آواتار amir200h
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    بروجرد->تهران->قم
    سن
    33
    پست
    782

    رفع مشکل جستجو از طریق تاریخ شمسی برای همیشه

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

    ابتدا using زیر رو در بالای پروژه اضافه میکنیم

    using System.Globalization;


    سپس تاریخ رو بصورت شمسی با کد زیر بدست میاریم. تا فرمت yyyy/mm/dd حفظ بشه

    PersianCalendar PerCal = new PersianCalendar();
    string Year, Day, Month;
    Year = PerCal.GetYear(DateTime.Now).ToString();
    Month = PerCal.GetMonth(DateTime.Now).ToString("D2");
    Day = PerCal.GetDayOfMonth(DateTime.Now).ToString("D2");
    date = Year + "/" + Month + "/" + Day;

    خوب حالا مقدار متغیر date رو در فیلد جدولمون میریزیم
    تذکر: نوع فیلدی که میخوایم تاریخ رو توش ذخیره کنیم رو nvarchar تعریف کنید

    حالا واسه جستجو بین دو تاریخ از کوئری زیر استفاده میکنیم

    SELECT * FROM TBL_Name Where FildeDateName Between 'date1' and 'date2'

    واسه جستجو تاریخ های بعد از تاریخی که میخوایم

    SELECT * FROM TBL_Name Where FildeDateName > 'date'

    واسه جستجو تاریخ های قبل از تاریخی که میخوایم

    SELECT * FROM TBL_Name Where FildeDateName < 'date'


    برای جستجو در یک تاریخ خاص

    SELECT * FROM TBL_Name Where FildeDateName = 'date'

    تذکر: مقدار تاریخ ارسال شده باید با فرمت yyyy/mm/dd ارسال شود

    سوال دیگه ای بود در خدمیتم
    آخرین ویرایش به وسیله amir200h : یک شنبه 30 تیر 1392 در 12:36 عصر

  2. #2

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

    سلام خیلی ممنون
    من توی اس کیو ال از فرمتdatetime برای ذخیره انتخاب کردم اما نمی دونم از توی C#‎ چطور میشه با تکس باکس تاریخی که توسط کاربر وارد میشه رو ذخیره کنم.لطفا کمک کنید؟

  3. #3
    کاربر دائمی آواتار amir200h
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    بروجرد->تهران->قم
    سن
    33
    پست
    782

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

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

  4. #4

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

    امیر جان حالا اگه بخوای تاریخ رو از یه maskedbox بگیری باید چه کار کنیم ؟ یعنی کاربر خودش تاریخ رو وارد کنه مثلا به این صورت 1390/12/01 یا 01/12/1390 ؟

  5. #5
    کاربر دائمی آواتار amir200h
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    بروجرد->تهران->قم
    سن
    33
    پست
    782

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

    نقل قول نوشته شده توسط reza.atashafroz مشاهده تاپیک
    امیر جان حالا اگه بخوای تاریخ رو از یه maskedbox بگیری باید چه کار کنیم ؟ یعنی کاربر خودش تاریخ رو وارد کنه مثلا به این صورت 1390/12/01 یا 01/12/1390 ؟
    هیچ فرقی نمیکنه. من خودمم از maskedbox استفاده میکنم

  6. #6

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

    البته بهتره از char(10) برای ذخیره سازی استفاده کنید یا varchar(10) و نیازی به nvarchar نیست.

  7. #7
    کاربر دائمی آواتار amir200h
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    بروجرد->تهران->قم
    سن
    33
    پست
    782

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

    نقل قول نوشته شده توسط npscash مشاهده تاپیک
    البته بهتره از char(10) برای ذخیره سازی استفاده کنید یا varchar(10) و نیازی به nvarchar نیست.
    حتما ی دلیل داره که گفتم nvarchar برو یخورده مطالعه کن تا تفاوت رو ببینی بعد خودت به جواب میرسی که بهتره از کدوم استفاده کنیم

  8. #8
    کاربر دائمی
    تاریخ عضویت
    تیر 1392
    محل زندگی
    اهواز
    سن
    32
    پست
    181

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

    خیلی ممنون .خیلی وقت بود که دنبال همچین کدی بودم.فقط یه سوال d2چیه و چرا توی yearنذاشتینش؟اگه بخوام تاریخ رو از یه مسک تکست باکس درج کنم تو فیلدم باید چکار کنم ممنون میشم راهنمایی کنید

  9. #9
    کاربر دائمی آواتار roolinjax
    تاریخ عضویت
    تیر 1390
    محل زندگی
    جایی که آرامش باشد.
    سن
    35
    پست
    312

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

    سلام خوشگلم این کوئری هایی که نوشتی به فیلدمون به چشم رشته نگاه نمیکنه ؟
    و به صورت رشته بزرگتر و کوچکتر بودن رو درنظر نمیگیره ؟
    اگه قرار بود به همین راحتی باشه دیگه چرا نوع داده ی datetime رو میذاشتن ؟
    حتما این روش شما یه باگی داره

  10. #10
    کاربر دائمی
    تاریخ عضویت
    تیر 1392
    محل زندگی
    اهواز
    سن
    32
    پست
    181

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

    خیلی ممنون .خیلی وقت بود که دنبال همچین کدی بودم.فقط یه سوال d2چیه و چرا توی yearنذاشتینش؟اگه بخوام تاریخ رو از یه مسک تکست باکس درج کنم تو فیلدم باید چکار کنم ممنون میشم راهنمایی کنید

  11. #11
    کاربر دائمی آواتار roolinjax
    تاریخ عضویت
    تیر 1390
    محل زندگی
    جایی که آرامش باشد.
    سن
    35
    پست
    312

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

    d2 یعنی اینکه فیلد ماه و روز رو دو رقمی نشون بده اگر تک رقمی باشه به صورت 05 نشون میده (یعنی این تاریخ 1390/2/5 به صورت 1390/02/05 نوشته بشه)
    در مورد سال چون مطمئنا چهار رقم تکمیله پس نیازی نیست

  12. #12
    کاربر دائمی
    تاریخ عضویت
    تیر 1392
    محل زندگی
    اهواز
    سن
    32
    پست
    181

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

    ممنون.اگه درجش رو تو یه فیلد جدول بلدین یادم بدین لطفا.

  13. #13
    کاربر دائمی آواتار amir200h
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    بروجرد->تهران->قم
    سن
    33
    پست
    782

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

    نقل قول نوشته شده توسط misagh1370 مشاهده تاپیک
    خیلی ممنون .خیلی وقت بود که دنبال همچین کدی بودم.فقط یه سوال d2چیه و چرا توی yearنذاشتینش؟اگه بخوام تاریخ رو از یه مسک تکست باکس درج کنم تو فیلدم باید چکار کنم ممنون میشم راهنمایی کنید
    D2 رو میزاریم که طول اون رشته برابر با 2 حرف بشه و اگه کمتر بود مثلا 2 بود یه صفر به اولش اضافه میکنه و میشه 02
    هیچ فرقی نمیکنه من خودمم از مسک میگیرم. تنظیماتشو به صورت 0000/00/00 قرار بده و مقدارشو بریز تو جدول


    نقل قول نوشته شده توسط roolinjax مشاهده تاپیک
    سلام خوشگلم این کوئری هایی که نوشتی به فیلدمون به چشم رشته نگاه نمیکنه ؟
    و به صورت رشته بزرگتر و کوچکتر بودن رو درنظر نمیگیره ؟
    اگه قرار بود به همین راحتی باشه دیگه چرا نوع داده ی datetime رو میذاشتن ؟
    حتما این روش شما یه باگی داره
    بله دوست من. دقیقا همین کارو میکنه. داده datetime مختض تاریخ میلادیه و تاریخ 1300 رو قبول نمیکنه. برای رفع این مشکل اگه اشتباه نکنم از sql 2005 به بعد داده datetime2 اومد که این مشکل رو حل کرد. البته من خودم ازش استفاده نمیکنم و به همین صورتی که آموزش دادم استفاده میکنم و تا حالا هیچ مشکلی نداشته.


    نقل قول نوشته شده توسط misagh1370 مشاهده تاپیک
    ممنون.اگه درجش رو تو یه فیلد جدول بلدین یادم بدین لطفا.
    بفرما

        //baraye gereftane tarikh
    PersianCalendar PerCal = new PersianCalendar();
    string Year, Day, Month;
    Year = PerCal.GetYear(DateTime.Now).ToString();
    Month = PerCal.GetMonth(DateTime.Now).ToString("D2");
    Day = PerCal.GetDayOfMonth(DateTime.Now).ToString("D2");
    date = Year + "/" + Month + "/" + Day;
    //bbaraye darj kardan dar bank
    SqlConnection con = new SqlConnection();
    con.ConnectionString = "server=(local);database=Bank_Name;trusted_connect ion=yes";
    SqlCommand com = new SqlCommand();
    com.Connection = con;
    com.CommandText = "insert into tbl_Name (DateShamsi) ";
    com.CommandText += "values (@DateShamsi)";
    com.Parameters.AddWithValue("@DateShamsi", date);
    con.Open();
    com.ExecuteNonQuery();
    con.Close();

  14. #14
    کاربر دائمی
    تاریخ عضویت
    تیر 1392
    محل زندگی
    اهواز
    سن
    32
    پست
    181

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

    عالی بود ممنون.فقط منظور از
    @DateShamsi
    چیه و ما از کجا به برنامه میگیم که مقدار مسک باکس رو توی فیلد بریزه.ببخشید زیاد سوال میپرسم چون میخوام برنامه رو به وبی دات نت بنویسم

  15. #15
    کاربر دائمی
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    کنار یه ساحل خیلی زیبا
    پست
    922

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

    دوست عزیز این یه پارامتر هست و باید یه چیزی رو که میخوای بجای این تو دستور درجت قرار بدی بنویسی یعنی بجای date مسک تکس باکست رو بنویس البته تکسشو با ویژوال استدیو ننوشتم خودت منظورمو بگیر
     com.Parameters.AddWithValue("@DateShamsi", masktexbox.text.tostring());

  16. #16
    کاربر دائمی آواتار roolinjax
    تاریخ عضویت
    تیر 1390
    محل زندگی
    جایی که آرامش باشد.
    سن
    35
    پست
    312

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

    نقل قول نوشته شده توسط amir200h مشاهده تاپیک
    بله دوست من. دقیقا همین کارو میکنه. داده datetime مختض تاریخ میلادیه و تاریخ 1300 رو قبول نمیکنه. برای رفع این مشکل اگه اشتباه نکنم از sql 2005 به بعد داده datetime2 اومد که این مشکل رو حل کرد. البته من خودم ازش استفاده نمیکنم و به همین صورتی که آموزش دادم استفاده میکنم و تا حالا هیچ مشکلی نداشته.
    خوب عزیزم منم حرفم همینه
    فرقی نداره میلادی و شمسی بودن مطرح نیست، منظورم اینه که اگر داره درست جواب میده پس برای میلادی هم درست جواب میده پس نوع داده ی datetime واقعا یه نوع داده ی اضافی به شمار میاد "البته به گفته ی شما"
    من یه کلاس کامل از توابع مورد نیاز برای محاسبات شمسی ساختم که توی همه ی پروژه هام ازش استفاده می کنم و زندگی راحتی دارم
    هیچوقت هم کدنویسی جدیدی برای این قضیه نکردم
    توی این کلاس همه چی پیدا میشه و از طرفی خیالم راحته که دارم با نوع داده ی استاندارد خود اسکیوال کار می کنم و مطمئنم جایی منو لنگ نمیذاره.

  17. #17
    کاربر دائمی آواتار roolinjax
    تاریخ عضویت
    تیر 1390
    محل زندگی
    جایی که آرامش باشد.
    سن
    35
    پست
    312

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

    نقل قول نوشته شده توسط HAMRAHSOFT.IR مشاهده تاپیک
    سلام
    برای linq چه روشی پیشنهاد مکنید
    این مسئله ای که دوستمون مطرح کردن به نحوه ذخیره داده توی بانک ربط داره (یعنی به اسکیوال مربوطه)
    فکر نمیکنم در متدولوژی استفاده ازش تاثیری بذاره
    یعنی با لینک هم میتونید از این روش استفاده کنید اگر واقعا این روش درست باشه و کارایی داشته باشه.

  18. #18
    کاربر دائمی آواتار amir200h
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    بروجرد->تهران->قم
    سن
    33
    پست
    782

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

    نقل قول نوشته شده توسط roolinjax مشاهده تاپیک
    خوب عزیزم منم حرفم همینه
    فرقی نداره میلادی و شمسی بودن مطرح نیست، منظورم اینه که اگر داره درست جواب میده پس برای میلادی هم درست جواب میده پس نوع داده ی datetime واقعا یه نوع داده ی اضافی به شمار میاد "البته به گفته ی شما"
    من یه کلاس کامل از توابع مورد نیاز برای محاسبات شمسی ساختم که توی همه ی پروژه هام ازش استفاده می کنم و زندگی راحتی دارم
    هیچوقت هم کدنویسی جدیدی برای این قضیه نکردم
    توی این کلاس همه چی پیدا میشه و از طرفی خیالم راحته که دارم با نوع داده ی استاندارد خود اسکیوال کار می کنم و مطمئنم جایی منو لنگ نمیذاره.
    حوب این کلاستو با آموزش بزار بقیه هم استفاده کنن

  19. #19
    کاربر دائمی آواتار roolinjax
    تاریخ عضویت
    تیر 1390
    محل زندگی
    جایی که آرامش باشد.
    سن
    35
    پست
    312

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

    Shamsi.rar

    آموزش لازم نداره
    یه خط توضیح اول هز بلاک کافیه :
    البته من توی این کلاس قطعه کدهای مفید دیگه ای هم که ممکنه به دردتون بخوره رو میذارم
    لیست متدهای موجود در این کلاس به شرح زیر است :
    1- تبدیل تاریخ میلادی به شمسی
    2- تبدیل تاریخ شمسی به میلادی
    3- بررسی صحت تاریخ وارد شده
    4- محاسبه ی اختلاف دو تاریخ به دقیقه
    5- محاسبه ی اختلاف دو تاریخ به روز
    و موارد دیگر (گفتم شاید کاربردی باشه براتون) :
    6- بررسی صحت و اعتبار کد ملی
    7- بررسی اتچ بودن دیتابیس مورد نظر به اسکیوال
    8- حذف پوشه ای با فایل های داخل آن
    آخرین ویرایش به وسیله roolinjax : یک شنبه 06 مرداد 1392 در 18:57 عصر

  20. #20
    کاربر دائمی آواتار amir200h
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    بروجرد->تهران->قم
    سن
    33
    پست
    782

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

    نقل قول نوشته شده توسط roolinjax مشاهده تاپیک
    Shamsi.rar

    آموزش لازم نداره
    یه خط توضیح اول هز بلاک کافیه :
    البته من توی این کلاس قطعه کدهای مفید دیگه ای هم که ممکنه به دردتون بخوره رو میذارم
    لیست متدهای موجود در این کلاس به شرح زیر است :
    1- تبدیل تاریخ میلادی به شمسی
    2- تبدیل تاریخ شمسی به میلادی
    3- بررسی صحت تاریخ وارد شده
    4- محاسبه ی اختلاف دو تاریخ به دقیقه
    5- محاسبه ی اختلاف دو تاریخ به روز
    و موارد دیگر (گفتم شاید کاربردی باشه براتون) :
    6- بررسی صحت و اعتبار کد ملی
    7- بررسی اتچ بودن دیتابیس مورد نظر به اسکیوال
    8- حذف پوشه ای با فایل های داخل آن
    این کلاس چطوری تعداد رکوردهای بین دوتا تاریخو بیرون میکشه؟

  21. #21
    کاربر دائمی آواتار roolinjax
    تاریخ عضویت
    تیر 1390
    محل زندگی
    جایی که آرامش باشد.
    سن
    35
    پست
    312

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

    شما میلادی بزن تو بانک
    ولی اسکریپت اسکیوال رو قبل ارسال با متد مورد نظر به میلادی تبدیل کن وبعد ارسال کن
    خیلی ساده

  22. #22
    کاربر دائمی آواتار amir200h
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    بروجرد->تهران->قم
    سن
    33
    پست
    782

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

    نقل قول نوشته شده توسط roolinjax مشاهده تاپیک
    شما میلادی بزن تو بانک
    ولی اسکریپت اسکیوال رو قبل ارسال با متد مورد نظر به میلادی تبدیل کن وبعد ارسال کن
    خیلی ساده
    ولی اینجوری به نظر من باز هم مشکلاتی هست. مثل کم و زیاد بودن تعداد روزها در ماه های میلادی و شمسی. بعد هرجا بخوای تاریخو نشون کاربر بدی باید تبدیل کنی این زمانی که بخوای لیست انبوهی رو تو دیتاگرید نشون بدی به چشم میاد که چقدر سرعت رو میاره پایین. تو کریستال ریپورت هم مشکل بوجود میاد و ....
    من که خودم روش خودمو بیشتر ترجیح میدم چون هم سرعتش بالاتره هم یسری مشکلاتو نداره. البته بدون اشکال هم نیست ولی خوب تا حالا من به مشکلی برنخوردم

  23. #23
    کاربر دائمی آواتار roolinjax
    تاریخ عضویت
    تیر 1390
    محل زندگی
    جایی که آرامش باشد.
    سن
    35
    پست
    312

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

    نقل قول نوشته شده توسط amir200h مشاهده تاپیک
    ولی اینجوری به نظر من باز هم مشکلاتی هست. مثل کم و زیاد بودن تعداد روزها در ماه های میلادی و شمسی. بعد هرجا بخوای تاریخو نشون کاربر بدی باید تبدیل کنی این زمانی که بخوای لیست انبوهی رو تو دیتاگرید نشون بدی به چشم میاد که چقدر سرعت رو میاره پایین. تو کریستال ریپورت هم مشکل بوجود میاد و ....
    من که خودم روش خودمو بیشتر ترجیح میدم چون هم سرعتش بالاتره هم یسری مشکلاتو نداره. البته بدون اشکال هم نیست ولی خوب تا حالا من به مشکلی برنخوردم
    اگر محاسبات تاریخی نداشته باشید روش شما میتونه راه گشا باشه اما برای مثلا بدست آوردن تعداد روز بین دو تاریخ شما با تاریخ شمسی اصلا جواب درستی نمیگیری به همون دلیلی که خودت گفتی (اختلاف روزها در شمسی و میلادی)
    مسئله ی بعدی ریختن مقدار فیلد شما درون یه متغیر تاریخ در سی شارپه که بازهم اگر میلادی نباشه صددرصد ارور میده (چون ویژوال استودیو که دیگه کلا میلادیه. بگذریم از اون کامپوننت PersianCalender که خوب توی سیستم کنونی راه گشا نیست)
    ضمنا کریستال ریپورت یکی دو ثانیه تاخیر رو داره (چه محاسبات کنه چه نکنه) نکته ی بعدی اینه که ما محاسبات کریستال رو درون خود کریستال با Formula Field انجام میدیم که سرعت مناسبی داره
    دیتاگرید هم زیاد کند نبوده تا الان با مثلا حدود 5000 رکورد-
    در هر صورت نظر شما محترم...

  24. #24
    کاربر دائمی آواتار roolinjax
    تاریخ عضویت
    تیر 1390
    محل زندگی
    جایی که آرامش باشد.
    سن
    35
    پست
    312

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

    سلام اینم یه نمونه پروژه ی کوچک که از متدهای کلاس شمسی توش استفاده شده
    امیدوارم به دردتون بخوره
    دانلود نمونه پروژه

  25. #25
    کاربر دائمی آواتار amir200h
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    بروجرد->تهران->قم
    سن
    33
    پست
    782

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

    نقل قول نوشته شده توسط misagh1370 مشاهده تاپیک
    سلام من این کد رو به وی بی دات نت نوشتم اما درست کار نمیکنه.تو این کد متغیر dateرو که مقدار سال وماه وروز رو توش ریختین از چه نوعی تعریف کردین؟
    این کدمه دوستان خواهش میکنم کمک کنن تا مشکلم رفع بشه و اشکال کد رو بگن.ممنون میشم

    Imports System.Globalization
    Dim percal As PersianCalendar = New PersianCalendar()
    Dim year, month, day As string
    year = percal.GetYear(DateTime.Now).ToString()
    month = percal.GetMonth(DateTime.Now).ToString("d2")
    day = percal.GetDayOfMonth(DateTime.Now).ToString("d2")


    Dim tarikh As Date = year + "/" + month + "/" + day
    MaskedTextBox1.Text = tarikh

    SqlDataAdapter1.InsertCommand.Parameters.Item(0).V alue = MaskedTextBox1.Text.ToString()
    If SqlConnection1.State = ConnectionState.Closed Then
    SqlConnection1.Open()
    End If
    SqlDataAdapter1.InsertCommand.ExecuteNonQuery()
    DataSet21.tbl_date.Clear()
    SqlDataAdapter1.Fill(DataSet21.tbl_date)
    SqlConnection1.Close()
    MaskedTextBox1.Clear()
    از نوع رشته باید باشه. شما به رشته تبدیل کن بعد بریز تو بانکت
    Dim tarikh As string = year + "/" + month + "/" + day

  26. #26
    کاربر دائمی
    تاریخ عضویت
    تیر 1392
    محل زندگی
    اهواز
    سن
    32
    پست
    181

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

    از نوع رشته هم تبدیل کردم درج میشه اما نه صفر میذاره قبل از ماه وروز .و نه اگر ماهم بیشتر از دوازده بود ایرادی میگیره واسه روز هم همینطور.

  27. #27
    کاربر دائمی آواتار amir200h
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    بروجرد->تهران->قم
    سن
    33
    پست
    782

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

    نقل قول نوشته شده توسط misagh1370 مشاهده تاپیک
    از نوع رشته هم تبدیل کردم درج میشه اما نه صفر میذاره قبل از ماه وروز .و نه اگر ماهم بیشتر از دوازده بود ایرادی میگیره واسه روز هم همینطور.
    بفرما. ببین کار میکنه یا نه.
    Dim pc As New System.Globalization.PersianCalendar
    Dim sb As New System.Text.StringBuilder

    sb.Append(pc.GetYear(Now).ToString() & "/")
    sb.Append(Format(pc.GetMonth(Now), "0#") & "/")
    sb.Append(pc.GetDayOfMonth(Now).ToString())

    Label1.Text = sb.ToString()

  28. #28
    کاربر دائمی
    تاریخ عضویت
    تیر 1392
    محل زندگی
    اهواز
    سن
    32
    پست
    181

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

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

    Dim tarikh As Date = year + "/" + month + "/" + day MaskedTextBox1.Text = tarikh

    SqlDataAdapter1.InsertCommand.Parameters.Item(0).V alue = MaskedTextBox1.Text.ToString()


  29. #29
    کاربر دائمی
    تاریخ عضویت
    تیر 1392
    محل زندگی
    اهواز
    سن
    32
    پست
    181

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

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

  30. #30

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

    اقا توی Linq اینو به من میدید؟
    SELECT * FROM TBL_Name Where FildeDateName < 'date'

    این ارور میده
    var query = from qry in db.Mazad_tbls
    where qry.Tahvil_Date.ToString() < DateTime.Now.ToShortDateString()

  31. #31

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

    نقل قول نوشته شده توسط hamid_0341 مشاهده تاپیک
    اقا توی Linq اینو به من میدید؟
    SELECT * FROM TBL_Name Where FildeDateName < 'date'

    این ارور میده
    var query = from qry in db.Mazad_tbls
    where qry.Tahvil_Date.ToString() < DateTime.Now.ToShortDateString()
    کسی نظری نداره؟

  32. #32
    کاربر دائمی آواتار wolf_majid
    تاریخ عضویت
    آذر 1387
    محل زندگی
    اصفهان
    پست
    534

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

    دو طرف عملگر < ررا تاریخ در نظر بگیر نه رشته
    یک مثال : date1 یک رشته معادل تاریخ امروزه
    var test = from d in dates
    where d < DateTime.Parse( date1)
    select d;

  33. #33

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

    من این هم گزاشتم ولی هیچ رکوردی نیاورد
         Linq.DataClasses1DataContext db = new Linq.DataClasses1DataContext();
    var query = from qry in db.Mazad_tbls
    where DateTime.Parse(qry.Tahvil_Date) < Convert.ToDateTime(DateTime.Now.ToShortDateString( ))

    select qry;

  34. #34
    کاربر دائمی
    تاریخ عضویت
    آذر 1385
    محل زندگی
    اراک
    پست
    230

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

    به این پست یک سری بزن

  35. #35
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    在上帝面前
    پست
    374

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

    با سلام
    چرا روی این تاریخ خطای زیر را میده .
    String was not recognized as a valid DateTime.
    من از کد زیر استفاده کردم
    DateTime datesearch = Convert.ToDateTime(date);//date="1392/06/31"

    آیا مشکل از اینه که 31/6 وجود نداره؟
    آخه با بقیه ی تاریخ ها مشکل نداره.

  36. #36
    کاربر دائمی آواتار momimomi
    تاریخ عضویت
    مهر 1391
    محل زندگی
    اصفهان
    پست
    269

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

    نقل قول نوشته شده توسط roolinjax مشاهده تاپیک
    سلام اینم یه نمونه پروژه ی کوچک که از متدهای کلاس شمسی توش استفاده شده
    امیدوارم به دردتون بخوره
    دانلود نمونه پروژه
    سلام
    لطفا لینک رو بررسی کنید ایراد داره
    ممنون

  37. #37
    کاربر تازه وارد آواتار goldoon
    تاریخ عضویت
    آبان 1391
    محل زندگی
    ایران-اصفهان
    سن
    34
    پست
    73

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

    نقل قول نوشته شده توسط HAMRAHSOFT.IR مشاهده تاپیک
    سلام
    برای linq چه روشی پیشنهاد مکنید
    برای linq ان روش کار نمی کنه یعنی توی سی شارپ نمیتونی دوتا رشته را با علامت > یا < بسنجی
    باید از متد string.compare استفاده کنی

  38. #38
    کاربر دائمی آواتار امیر مهرشاد
    تاریخ عضویت
    آذر 1390
    محل زندگی
    بجنورد (پاریس کوچولو)
    پست
    686

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

    نقل قول نوشته شده توسط reza.atashafroz مشاهده تاپیک
    امیر جان حالا اگه بخوای تاریخ رو از یه maskedbox بگیری باید چه کار کنیم ؟ یعنی کاربر خودش تاریخ رو وارد کنه مثلا به این صورت 1390/12/01 یا 01/12/1390 ؟
    خب خودت داری میگی جوابتو از خاصیت ماکس همین شی ای که داری استفاده میکنی استفاده کن

  39. #39
    کاربر دائمی آواتار MehdiElexal
    تاریخ عضویت
    آذر 1388
    محل زندگی
    پشت میز
    پست
    519

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

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

    ابتدا using زیر رو در بالای پروژه اضافه میکنیم

    using System.Globalization;


    سپس تاریخ رو بصورت شمسی با کد زیر بدست میاریم. تا فرمت yyyy/mm/dd حفظ بشه

    PersianCalendar PerCal = new PersianCalendar();
    string Year, Day, Month;
    Year = PerCal.GetYear(DateTime.Now).ToString();
    Month = PerCal.GetMonth(DateTime.Now).ToString("D2");
    Day = PerCal.GetDayOfMonth(DateTime.Now).ToString("D2");
    date = Year + "/" + Month + "/" + Day;

    خوب حالا مقدار متغیر date رو در فیلد جدولمون میریزیم
    تذکر: نوع فیلدی که میخوایم تاریخ رو توش ذخیره کنیم رو nvarchar تعریف کنید

    حالا واسه جستجو بین دو تاریخ از کوئری زیر استفاده میکنیم

    SELECT * FROM TBL_Name Where FildeDateName Between 'date1' and 'date2'

    واسه جستجو تاریخ های بعد از تاریخی که میخوایم

    SELECT * FROM TBL_Name Where FildeDateName > 'date'

    واسه جستجو تاریخ های قبل از تاریخی که میخوایم

    SELECT * FROM TBL_Name Where FildeDateName < 'date'


    برای جستجو در یک تاریخ خاص

    SELECT * FROM TBL_Name Where FildeDateName = 'date'

    تذکر: مقدار تاریخ ارسال شده باید با فرمت yyyy/mm/dd ارسال شود

    سوال دیگه ای بود در خدمیتم
    این کد ایراد داره
    من تکه کد زیر رو نوشتم
    strSql = "Select * From hazineha WHERE tarikh Between" + "'" + "1392" + "/" + "12" + "/" + "1" + "'" + " and tarikh=" + "'" + "1392" + "/" + "12" + "/" + "31" + "'" + "order by tarikh";
    دیتای برج 11 رو هم میاره !!!!!
    و مشکل اصلی اینجاس که به دید رشته نمیبینه دیتا رو !

تاپیک های مشابه

  1. تاریخ شمسی برای Dot Net Nuke
    نوشته شده توسط smirabolg در بخش ASP.NET Web Forms
    پاسخ: 24
    آخرین پست: یک شنبه 22 اسفند 1389, 18:09 عصر
  2. پاسخ: 4
    آخرین پست: جمعه 20 مرداد 1385, 20:34 عصر
  3. تاریخ شمسی برای تازه کار
    نوشته شده توسط mahtabi در بخش Access
    پاسخ: 3
    آخرین پست: جمعه 25 فروردین 1385, 10:36 صبح
  4. کامپنوننت تاریخ شمسی برای فلش
    نوشته شده توسط نعیم رضاییان در بخش Flash و ActionScript
    پاسخ: 2
    آخرین پست: سه شنبه 29 آذر 1384, 20:55 عصر
  5. تاریخ شمسی برای قبل از سال 1970
    نوشته شده توسط Amir Fekrazad در بخش PHP
    پاسخ: 5
    آخرین پست: دوشنبه 28 آذر 1384, 23:52 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •