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

نام تاپیک: اجرا کردن class ها در console application

  1. #1
    کاربر دائمی آواتار morika
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    کرج
    سن
    34
    پست
    736

    Question اجرا کردن class ها در console application

    سلام
    من یه برنامه کنسول دارم که توش کلی کلاس برای انجام دادن کارهام نوشتم. اما مشکل اینجاست که مدیریت این کلاس ها یکم سخت شده. نحوه برنامه نویسی من به این شکل هست که مثلا اگر دستور زیر وارد بشه:
    renam "e:\music\salar aghili\serre hezarsale" 01 own

    این دستور یعنی تمام فایلهای موجود در فولدر مورد نظر rename بشن به این صورت که اسم خود فایل حفظ بشه وفقط اعداد از 01 شروع بشن و به اول فایل اضافه بشن. یعنی فایلها بشن.
    برنامه نویسی من به این شکل هست که اول برنامه دستور rename رو با یه switch تشخیص میده بعد پارامترهایی که بعداز دستور فرستاده به متد rename می فرسته.
    برای اینکار من برای هر متدی که تو برنامه دارم باید یه case بنویسم که خیلی زیاد شده.
    حالا سوال من اینه که راهی هست که با یک خط کد به کنسول بگیم بره بگرده متدی که همنام با اوین کلمه نوشته شده در دستور هست (rename) رو پیدا کنه و پارامترهای بعدی رو به این کلاس ارسال کنه؟
    البته همه متدها توی یک کلاس قرار دارن بخاطر همین احتیاجی به پیدا کردن کلاس نیست فقط باید متد همنام با دستور پیدا بشه. مبنای تشخیص پارامتر ها از هم
    command.split(' ')
    هستش
    یعنی با یک خط کد تمام کار اون switch و دردسرهای ارسال پارامتر رو انجام بده.
    ممنون

  2. #2

    نقل قول: اجرا کردن class ها در console application

    شما باید از Reflection استفاده کنی
    برای کار شما با Reflection میتونی متد رو انتخاب کرده و پارامتر هاشو تنظیم کنی و اوانو اجرا کنی
    اما قبلش باید اون قسمت switch case برنامت رو تبدیل کنی به چند تا متد یعنی هر case تبدیل میشه به یک متد جدا با نامی که در case چک میکنی
    بعد با متد GetMethod تایپ مربوط به اون کلاسی که متد هاتو توش تعریف کردی میتونی متد مورد نظرتو با نام تشخیص بدی
    نوعی که بر میگردونه کلاس MethodInfo هست که هم میتونی اونو بریزی توی یک متغیری از همین نوع و هم میتونی مستقیماً با متد invoke متد پیدا شده رو فراخوانی کنی
    اگر در کدت یک یا چند متد رو override کردی هم میتونی به هر کدوم از پیاده سازی هات یک attribiute بدی و با همون متد GetMethod مورد مناسب پارامترهای دریافتی رو تشخیص بدی

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

  1. سوال: باز کردن console application در windowsapplication
    نوشته شده توسط immortalsoull در بخش VB.NET
    پاسخ: 0
    آخرین پست: جمعه 31 خرداد 1392, 18:58 عصر
  2. مبتدی: error های زیاد در هنگام کامپیال کردن visual studio 2012 win32 console Application
    نوشته شده توسط EBRAHIMIEKOKDARAGHI در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 2
    آخرین پست: یک شنبه 01 بهمن 1391, 21:44 عصر
  3. مخفی کردن پنجره یک برنامه console
    نوشته شده توسط vcldeveloper در بخش برنامه نویسی در Delphi
    پاسخ: 7
    آخرین پست: پنج شنبه 06 آبان 1389, 17:42 عصر
  4. سوال: کمی پیچیده در رابطه با شل و اجرا کردن application
    نوشته شده توسط good_boy در بخش برنامه نویسی در 6 VB
    پاسخ: 4
    آخرین پست: سه شنبه 01 بهمن 1387, 06:50 صبح
  5. اجرا کردن برنامه در دلفی
    نوشته شده توسط مهرداد برنامه نویس در بخش برنامه نویسی در Delphi
    پاسخ: 0
    آخرین پست: جمعه 20 شهریور 1383, 22:38 عصر

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

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