تبلیغات
banner
banner
banner
تبلیغات
banner

فیلم های آموزشی : 36 +

تعداد کاربران : 44 +

تعداد کل مطالب : 338 +

تعداد نظرات : 33 +

حضرت علی (ع): هر چیزی زکات دارد ، و زکات علم نشر آن است!

آموزش مقدماتی تا پیشرفته سی شارپ بخش صد و شصت و چهارم


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



آموزش مقدماتی تا پیشرفته سی شارپ بخش صد و شصت و چهارم

سلام به همه کاربران وب‌سایت لندلرن

قسمت و صد و شصت و چهارم


ايجاد يك كتابخانه ي كلاس براي Viewer Favorites:

در ابتدای دوره با مفهوم راه حل ها و دليل استفاده از آنها آشنا شديد.

همانطور كه به خاطر داريد در آن جا ذكر شد كه يك راه حـل مي تواند شامل بيش از يك پروژه باشد.

در راه حل برنامه يFavorites Viewer فقط يك پروژه وجود دارد و آن هم پروژه يFavorites Viewer است.

در بخش امتحان كنيد بعد، پروژه ي ديگري از نوع Class Library را به اين راه حل اضافه كرده و سپس كلاسهاي برنامه را به اين پروژه منتقل مي كنيم.

امتحان كنيد: اضافه كردن يك پروژه ي Class Library به راه حل

  • به برنامه ي InternetFavorites برويد و بعد از ذخيره ي آن، ويژوال استوديو را ببنديد.
  • پروژه ي Favorites Viewer را در محيط ويژوال استوديو باز كنيد.
  • با استفاده از نوار منوي ويژوال استوديو گزينه ي File سپس Add سپس Existing Project را انتخاب كنيد.
  • در پنجره ي باز شده به فولدري بروي كـه برنامـه ي InternetFavorites را در آن ايجـاد كـرده ايـد
  • و سپس در آنجا فايلInternetFavorites.csproj را انتخاب كـرده
  • و روي دكمـه ي OK كليـك كنيد.
  • در پنجره ي Solution Explorer روي نام پـروژه ي Favorites Viewer كليـك راسـت كرده و از منوي باز شده گزينه ي Set As Startup  Project را انتخاب كنيد.

چگونه كار مي كند؟

با انجام اين كارها در راه حل خود دو پروژه خواهيد داشت :

يك پروژه ي وينـدوزي و يـك كتابخانـه ي كـلاس البتـه فعـلاً پـروژه كتابخانه ي كلاس خالي است و تمام كلاس هايي كه بايد در آن قرار بگيرند درون پروژه ي ويندوزي هستند.

در برنامه هاي قبلي نحوه اضافه كردن يك كلاس به برنامه را مشاهده كرده ايد .

در اين جا هم مـي توانيـد از همـان روش اسـتفاده كنيد، يعني روي نام پروژه كليك راست كنيد و از منوي نمايش داده شده گزينـه يAdd Class را انتخـاب كنيـد .

امـا كلاس هايي كه مي خواهيم در اين قسمت به برنامه ي InternetFavorites اضافه كنيم قبلاً طراحي شده اند.

پس نيازي به استفاده از اين روش نيست و به راحتي مي توانيم با ماوس اين كلاس ها را از برنامه ي Favorites Viewer  به برنامه ي InternetFavorites منتقل كنيم.

در بخش امتحان كنيد بعد اين روش را مشاهده خواهيد كرد .

امتحان كنيد: انتقال كلاسها بين دو پروژه

  • با اسـتفاده از پنجـره ي Solution Explorer فایل  Favorites.cs را انتخاب كرده و با ماوس آن را به پروژه ي InternetFavorites منتقل كنيد.
  • به اين ترتيب يـك كپـي از اين فايل به داخل فولدر اين پروژه فرستاده خواهد شد.
  • همــــين كــــار را بــــراي فايــــل WebFavorite.cs نيــــز تكــــرار كنيــــد تــــا بــــه پــــروژه ي InternetFavorites منتقل شود.
  • حــال فايلهــاي Favorites.cs و WebFavorite.cs را از پــروژه ي Favorites Viewer انتخاب كرده و روي آنها كليك راست كنيد .
  • سپس با انتخاب گزينه ي Delete آنهـا را از ايـن پـروژه حذف كنيد.
  • در انتها بايد فضاي نام دو فايلي كه به پروژه ي InternetFavorites اضافه شده اند را تصحيح كنيد .
  • بـر روي فايل Favorites.cs در پنجره ي Solution Explorer دو بار كليك كنيد تـا كـد درون آن نمــــايش داده شــــود.
  • مــــشاهده خواهيــــد كــــرد كــــه كــــلاس Favorites در فــــضاي نــــام Favorites_Viewer قــــرار گرفتــــه اســــت .
  • نــــام مقابــــل دســــتور namespace را بــــه InternetFavorites تغيير دهيد تا فضاي نام آن تنظيم شود.
  • به اين ترتيـب كـد درون ايـن فايـل بايـد مشابه زير باشد.
  • همين مراحل را براي فايل WebFavorite.cs نيز تكرار كرده و فضاي نام آن را نيـز تغييـر دهيـد تـا هـر دو كلاس Favorites و WebFavorite در يك فضاي نام قرار بگيرند.

به اين ترتيب برنامه ي شما شامل دو پروژه خواهد بود كه هر يك داراي فايل هاي مرتبط به خود است.

دقت كنيد با وجود اينكه اين دو پروژه در يك راه حل هستند، اما به فايلهاي هم دسترسي ندارند و نمي توانند فايلهاي يكديگر را ببينند .

بنابراين اگر سعي كنيد كه برنامه را اجرا كنيد، پيغام خطايي نمايش داده مي شود و اعلام مي كنـد كـه كـلاس Favorites و WebFavorite توسط برنامه پيدا نشده است.

ايـن خطـا بـه ايـن دليـل رخ مـي دهـد كـه كـد هـاي درون فايـل Form1.cs نمـي تواننـد كلاسـهاي درون برنامـه ي InternetFavorites را مشاهده كنند و به آنها دسترسي داشته باشند.

رفع اين مشكل شامل دو مرحله مي شود.

پروژه ي كتابخانه ي كلاس را به صورت يك ارجاع، به برنامه ي ويندوزي اضافه كنيد.

به اين صورت برنامه ي ويندوزي مي تواند براي پيدا كردن كلاسهاي مورد نياز خود، خروجي پـروژه ي InternetFavorites ،يعنـي فايـل InternetFavorites.dll كه حاوي كلاسهاي مورد نياز است را نيز جستجو كند.

همانطور كه مي دانيد كلاسها در فضاي نامي هم نام با پروژه ي خود قرار مي گيرند .

بنابراين براي اين كه بتوانيد فقط بـا ذكر نام كلاسهاي موجود در فايل InternetFavorites.dll به آنها دسترسي داشـته باشـيد، بايـد بـا استفاده از دستور using فضاي نام آنها را به برنامه اضافه كنيد .

البته بدون انجام اين كار نيـز مـي توانيـد از كلاسـها استفاده كنيد، اما در اين صورت بايد نام كامل كلاسها (يعني نام خود كلاس همراه با فضاي نام آن) را ذكر كنيد.

در بخش امتحان كنيد قسمت صد و شصت و پنجم ، نحوي انجام اين دو مورد را مشاهده خواهيم كرد.

 

 


درباره نویسنده
سجاد اسدی
   سجاد اسدی

سجاد اسدی هستم دانشجوی رشته نرم افزار و علاقه مند به تدریس و یادگیری دروس مرتبط با تکنولوژی نرم افزار و اینترنت اشیاء جهت ارتباط با بنده مراجعه شود به آیدی سروش و تلگرام : @ordervira و پیج بنده در اینستاگرام instagram.com/sajjadred11 ""اللهم صل علی محمد و آل محمد"" برای شروع هیچ وقت دیر نیست. "الهم عجل لولیک الفرج"

دیدگاه بگذارید

avatar
  اشتراک  
اطلاع رسانی

aparat کانال آپارات

soroush کانال سروش

کانال آی گپ