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

نام تاپیک: اجرا کردن کدی در سی شارپ در تاریخ خاص

  1. #1

    اجرا کردن کدی در سی شارپ در تاریخ خاص

    سلام!
    من می خوام برای اطلاعاتی که در یک سطر از جدول دیتابیسم ذخیره کردم و هر سطر یک تاریخ هم براش ذخیره شده, در اون تاریخ خاص کدی در سی شارپ اجرا بشه! مثلا فرض کنید می خوام در تاریخ مشخصی که مدیر برنامه وارد می کنه, پیام خاصی که اون رو هم مدیر برنامه وارد می کنه به ایمیل یکی از اعضای برنامه ارسال بشه, حالا من باید تاریخ رو هم در دیتابیس ذخیره کنم یا این که راه دیگه ای هم هست؟ (گفتم برنامه, به خاطر اینکه پروژه من سایت نیست و یک اپلیکیشنه که قراره به اینترنت وصل شه و این کارو انجام بده!)
    ممنون!

  2. #2
    کاربر دائمی آواتار bahar_engineer
    تاریخ عضویت
    دی 1387
    محل زندگی
    تهران
    پست
    657

    نقل قول: اجرا کردن کدی در سی شارپ در تاریخ خاص

    بله شما باید تاریخ مورد نظر رو توی دیتابیس ذخیره کنید و یه تایمر توی برنامه می ذارین که تاریخ هر روز سیستم رو چک می کنه و زمانی که تاریخ سیستم با تاریخی که توی بانک هست برابر شده اون عملیات انجام بشه

    کار خاصی نداره راحته

    اگه سوالی بود در خدمتم

  3. #3

    نقل قول: اجرا کردن کدی در سی شارپ در تاریخ خاص

    از پاسخ شما خیلی ممنونم! ولی مشکل من اینه که تعداد این تاریخ ها اصلا مشخص نیست! و مشکل دوم هم اینه که علاوه بر تاریخ ارسال ساعت و دقیقه ارسال هم دارم! یعنی من باید تایمری ایجاد کنم که هر دقیقه اتفاق بیفته و بعد تمام تاریخ های ارسال و ساعات ارسال را از دیتابیس بگیرد و با تاریخ و ساعت و دقیقه جاری تطبیق دهد و عمل مورد نظر راانجام دهد! من فکر می کنم که یک بار پردازشی خیلی بالا به سیستم تحمیل می کند! دنبال راهکار بهتری بودم! یا حتی پیشنهاد بهتری که بتواند تعریف نیازمندی من را کمی بهبود ببخشد! یعنی کمی تغییر در صورت مسئله به شرطی که بتواند بار پردازشی تحمیلی به سیستم در حالت بالا را کمی بهبود ببخشد!
    باز هم ممنون!

  4. #4
    کاربر دائمی
    تاریخ عضویت
    خرداد 1382
    محل زندگی
    تهران
    پست
    424

    نقل قول: اجرا کردن کدی در سی شارپ در تاریخ خاص

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

    بیایم این جور فکر کنیم که زمان رخ دادن رویداد تایمر رو شما متغیر تعریف کنین نه ثابت. منظورم اینه که تعریف نکین هر 10 دقیقه یک بار اتفاق بیافته. بلکه طوری تعریفش کنین که اولین رویداد اتفاق افتاده دقیقا زمانی باشه که قرار هست شما پیغامی رو ارسال کنین.
    حالا منظورم چیه؟ دقیقا منظورم این هست که شما در اولین اجرای برنامه بیاید و نزدیکترین زمان برای ارسال پیام رو پیدا کنین، اختلاف زمان حالا و زمانی که باید اون پیام رو ارسال کنین رو به دست بیارین و تایمرتون رو برای اون اختلاف زمانی ست کنین. مثلا نزدیکترین پیام 2 دقیقه دیگه هست، حالا دوره تایمر رو شما برای 2 دقیقه تعریف کنین. دو دقیقه دیگه که رویداد تایمر اتفاق افتاد، شما بیاید نزدیکترین پیام رو مجددا پیدا کنین و تایمرتون رو دوباره همینجوری ست کنین و بعد پیامتون رو ارسال کنین.
    فکر کنم اینجوری بار کمتری رو پردازنده و عملیات IO بسیار کمتری هم خواهید داشت.
    آخرین ویرایش به وسیله naeeme : یک شنبه 28 تیر 1388 در 14:23 عصر دلیل: تصحیح غلط املایی

  5. #5

    نقل قول: اجرا کردن کدی در سی شارپ در تاریخ خاص

    باسلام! از راهنماییتون خیلی ممنون!

  6. #6

    نقل قول: اجرا کردن کدی در سی شارپ در تاریخ خاص

    با سلام خدمت همه دوستان
    با اجازه اساتيد من هم يك نظر بدم. دوست عزيز شما ميتوني در كنار اپليكيشنت يك اپليكيشن كوچيك بطور جداگانه تعريف كني كه هر بار ويندوز بالا مياد اجرا بشه. اين اپليكيشن وقتي اجرا ميشه بياد تمام تاريخ ها و ساعت ها رو از ديتابيس بخونه و داخل يك آرايه يا يك كلكسيون بريزه و بعد از اينكار ديگه با ديتابيس كاري نداشته باشه. و بعد انجام اين مرحله همونطور كه دوستان گفتند بياد با يه تايمر كه هر ثانيه اجرا ميشه تاريخ و ساعت ها رو چك كنه تا در زمان مناسب پيغام مورد نظر رو به ايميل ها بفرسته.

    موفق باشي

  7. #7
    کاربر دائمی
    تاریخ عضویت
    خرداد 1382
    محل زندگی
    تهران
    پست
    424

    نقل قول: اجرا کردن کدی در سی شارپ در تاریخ خاص

    در كنار اپليكيشنت يك اپليكيشن كوچيك بطور جداگانه تعريف كني كه هر بار ويندوز بالا مياد اجرا بشه
    نوشتن یک سرویس ویندوز برای انجام اینکار راه حل بسیار مناسبیه. چون وابستگی به انسان رو از بین میبره.

    بياد با يه تايمر كه هر ثانيه اجرا ميشه تاريخ و ساعت ها رو چك كنه
    می دونین این روش چقدر به سیستم فشار میاره و سربار ایجاد می کنه؟

    بياد تمام تاريخ ها و ساعت ها رو از ديتابيس بخونه و داخل يك آرايه يا يك كلكسيون بريزه
    امکان داره فضای زیادی از حافظه رو بگیره. در ضمن اگر تعدادش بالا بره، هر نوع کلکسیونی نمی تونه اون رو به سرعت پردازش کنه و زمان بر میشه.

  8. #8

    نقل قول: اجرا کردن کدی در سی شارپ در تاریخ خاص

    سلام! در جواب اون دوستمون که گفتند که یک اپلیکیشن جدا بنویس که یک بار دیتاهارو بخونه و ... باید بگم که این کار امکانپذیر نیست چون این دیتاها در حال تغییر و تحولند و در طول روز ممکن است که هر لحظه رکوردهایی به اون اضافه بشه که تاریخ ارسال اونها چند ساعت آینده روز جاری باشه! این نوع پیامها به موقع ارسال نمی شوند!

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

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