در جلسه دوازدهم آموزش ASP.NET Core در خدمت شما هستیم با آموزش کتابخانه کلاسی پرتابل ASP.NET Core از وب سایت آموزش برنامه نویسی سورس باران. با ما همراه باشید…
آموزش کتابخانه کلاسی پرتابل ASP.NET Core
در این بخش کتابخانه کلاسی پرتابل (PCL) را توضیح می دهیم و می گوییم که چرا به آن نیاز داریم. جهت درک این مطلب پوشه پروژه کتابخانه کلاسی که در بخش قبل ایجاد کردیم را باز کنید.
در این پوشه علاوه بر project.json و فایل های CS می توانید فایل *.xproj را نیز ببینید، به این دلیل که نوع پروژه ی .NET Core ویژوال استودیو به جای *.csproj، *.xproj است.
همان طور که توسط ماکروسافت بیان شده است، *.xproj در حال از بین رفتن است، اما با این حال همچنان در تجهیز پیش نمایش 2 وجود دارد. همان طور که قبلا نیز بیان کردیم، برنامه ی UWP از *.csproj استفاده می کند.
حقیقت امر این است که نمی توان *.csproj را به عنوان مرجع قرار داد و این قابلیت بنا نیست که اجرا شود، زیرا *.xproj در نهایت این عرصه را ترک خواهد کرد.
بنابراین در عوض ما به کتابخانه ی کلاسی ای نیاز داریم که بتوان آن را بین برنامه ی UWP و برنامه ی کنسول به اشتراک گذاشت. در همین نقطه است که PCL وارد می شود.
PCL چیست؟
- با کمک پروژه ی PCL می توان اسمبلی های مدیریت شده ای که در بیش از یک پلتفرم .NET Framework کار می کنند را ساخت و نوشت.
- می توان کلاس هایی را ایجاد کرد که از کدی تشکیل شده باشند که بخواهیم آن ها را در میان چندین پروژه مانند shared business logic به اشتراک بگذاریم و پس از آن چندین نوع از پروژه های مختلف به این کلاس ها اشاره کنیم.
- با کمک PCL می توانید کتابخانه ها و برنامه های چند پلتفرمی را به صورت سریع و آسان برای پلتفرم های ماکروسافت بنویسید.
- با کمک PCL می توانید زمان و هزینه ی نوشتن و آزمایش کد را کاهش دهید.
- برای نوشتن و ساخت اسمبلی های پرتابل .NET Framework این نوع پروژه می تواند کمک زیادی به شما بکند. بعد از این کار تنها کافیست از طریق برنامه هایی که هدف آن ها چندین پلتفرم است (مانند ویندوز و ویندوز فون و غیره)، به این اسمبلی ها اشاره کنید.
حالا کتابخانه ی کلاسی که از طریق Solution Explorer ایجاد کردیم را پاک کنید. به صورت همزمان آن را از پوشه ی Solution حذف کنید و آیتم پروژه ی جدیدی را اضافه کنید.
از بخش سمت چپ پنجره Visual C# → Windows را انتخاب کنید و از بخش میانی Class Library (Portable) را انتخاب کنید. در بخش اسم StringLibrary را وارد کنید و بر روی OK کلیک کنید تا این پروژه ایجاد شود.
حالا باید فریمورک های هدفی که نیاز است به آن ها اشاره شود را انتخاب کنیم.فعلا بیایید برای مدت کوتاهی Universal و ASP.NET را انتخاب کنیم تا بعدا مجددا هدف را مشخص کنیم. بر روی OK کلیک کنید.
همان طور که می بینید پروژه ی جدیدی به فرمت PCF ایجاد شده است. حالا در Solution Explorer بر روی پروژه ی StringLibrary کلیک کنید و Properties را انتخاب کنید.
بر روی Target .NET Platform Standard کلیک کنید.
بر روی Yes کلیک کنید؛ با در نظر داشتن این مطلب که این کتابخانه نسبت به قبل تنها یک اختلاف اندک دارد. این تفاوت این است که از این کلاس می توان در کنار UWP نیز استفاده کرد. زیرا در آن به جای *.xproj از *.csproj استفاده شده است.
حالا کلاس جدیدی را اضافه کنید. برای انجام این کار از داخل Solution Explorer بر روی پروژه کلیک راست کنید و Add → Class… را انتخاب کنید.
از بخش میانی پنجره class را انتخاب کنید و در قسمت اسم StringLib.cs را وارد کنید و در نهایت بر روی Add کلیک کنید. بعد از اضافه شدن این کلاس کد زیر را در فایل StringLib.cs جایگزین کنید.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace StringLibrary { public static class StringLib { public static bool StartsWithUpper(this String str) { if (String.IsNullOrWhiteSpace(str)) return false; Char ch = str[0]; return Char.IsUpper(ch); } public static bool StartsWithLower(this String str) { if (String.IsNullOrWhiteSpace(str)) return false; Char ch = str[0]; return Char.IsLower(ch); } public static bool StartsWithNumber(this String str) { if (String.IsNullOrWhiteSpace(str)) return false; Char ch = str[0]; return Char.IsNumber(ch); } } }
حالا پروژه ی کتابخانه ی کلاس پرتابل را بسازید. بعد از انجام این کار این پروژه باید بدون هیچ مشکلی کامپایل شود. سپس مرجع این کتابخانه را در پروژه ی کنسول اضافه کنید. بنابراین FirstApp را گسترش دهید، بر روی References کلیک راست کنید و Add Reference… را انتخاب کنید.
StringLibrary که همان پروژه ی کتابخانه ی کلاسی پرتابل ما است را از پنجره ی Reference Manager انتخاب کنید و بر روی OK کلیک کنید.
همان طور که می بینید، مرجع StringLibrary به پروژه ی کنسول اضافه شده است که می توان آن را در فایل project.json نیز مشاهده کرد. حالا مجددا برنامه را اجرا کنید تا همان نتیجه قبلی نمایش داده شود.
همین کتابخانه در برنامه ی UWP شما نیز استفاده خواهد شد.
لیست جلسات قبل آموزش ASP.NET Core
- آموزش ASP.Net Core – ASP.NET Core چیست؟ مزایای ASP.NET Core
- آموزش نصب ASP.NET Core و شروع کار با آن
- آموزش اعداد یا Numerics در ASP.Net Core
- آموزش اجرا کد ASP.Net Core
- Modularity در ASP.Net Core
- اضافه کردن فایل های موجود به پروژه در ASP.Net Core
- آموزش Package References در برنامه نویسی ASP.NET Core
- آموزش ایجاد برنامه UWP در برنامه نویسی ASP.NET Core
- آموزش MSBuild در برنامه نویسی ASP.NET Core
- آموزش متاپکیج (Meta Package) در ASP.NET Core 2
- آموزش پیاده سازی Windows Runtime و SDKهای افزونه ASP.NET Core
- آموزش ساخت کتابخانه استاندارد .NET در ASP.NET Core
راستی! برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام سورس باران عضو شوید.
- انتشار: ۱۲ مهر ۱۳۹۹
دسته بندی موضوعات
- آموزش برنامه نویسی
- آموزش کریپتو کارنسی (ارز دیجیتال)
- آموزش متنی برنامه نویسی
- پروژه برنامه نویسی
- فروشگاه
- فیلم های آموزشی
- #F
- ++C
- 3ds max
- Ada
- ADO.NET
- Adobe Flash
- Agile
- Ajax
- AngularJS
- Anime Studio
- apache
- ARM
- Asp.Net
- ASP.NET MVC
- assembly
- AVR
- Azure
- Bootstrap
- Cassandra
- CCNA
- CCNP
- CCSP
- ChatGPT
- Cisco
- CMD
- COBOL
- CSS
- Cython
- Django
- Dreameaver
- Elixir
- EntityFramework
- Erlang
- Flash
- Go
- Groovy
- Haskell
- Htaccess
- HTML
- IOS
- Jade
- jquery
- Kendo UI
- Linq
- Linux
- LUA
- MariaDB
- maya
- Meteor
- MongoDB
- Mono Android
- MonoGame
- Mysql
- NoSQL
- Oracle
- Orchard
- Perl
- php
- PHPMyAdmin
- R
- Rational Rose
- Ruby
- Rust
- Scala
- Scrum Master
- SFML
- SharePoint
- SignalR
- silver light
- SQL Server
- Stimulsoft Reports
- Telerik
- UML
- VB.NET&VB6
- Vue 3
- WPF
- Xml
- آردوینو
- آموزش های پروژه محور
- آیونیک
- اتوکد
- الگوریتم تقریبی
- الگوریتم نویسی و فلوچارت
- امنیت
- اندروید
- اندروید استودیو
- انیمیشن سازی
- بازی سازی با Scratch
- بک ترک
- بیسیک فور اندروید
- پایتون
- پرولوگ
- پریمیر
- جاوا
- جاوا اسکریپت
- جنگو
- جوملا
- دارت
- دلفی
- دوره های رایگان پیشنهادی
- زامارین
- سئو
- ساخت CMS
- ساخت اتوران
- ساختمان داده ها
- سی شارپ
- شبکه و مجازی سازی
- طراحی الگوریتم
- طراحی بازی
- طراحی وب
- فتوشاپ
- فریم ورک codeigniter
- فلاتر
- کاتلین
- کامپایلرها
- کانستراکت
- کریستال ریپورت
- کلوژر
- گوگل آنالیتیکس
- گیت
- لاراول
- مای بی بی
- مایکروسافت پروجکت
- متریال دیزاین
- متلب
- معماری کامپیوتر
- مهندسی اینترنت
- میکروتیک
- نود جی اس
- نیوک
- هوش مصنوعی
- ویبولوتین
- ویژوال استودیو
- یونیتی
- کتاب های آموزشی
- Ada
- Ajax
- Android
- ASP.NET
- ASP.NET Core
- AVR
- clips
- CNC
- COBOL
- CQRS
- Cython
- Dreamweaver
- Elixir
- Entity Framework 4.0
- Erlang
- Go
- Groovy
- Haskell
- LINQ
- Lua
- Matlab
- MFC
- Node.js
- PERL
- php
- PLC
- Prolog
- React
- Rust
- Scala
- SFML
- SharePoint
- silver light
- VHDL
- VMware
- WinJS
- Workflow
- WPF
- XHTML
- Yii Framework
- اتوکد
- اچ تی ام ال
- اسمبلی
- اکتیو ایکس
- الگوریتم و فلوچارت
- انگولار
- اوبونتو
- اوراکل
- بازی سازی
- بانک اطلاعاتی
- برنامه نویسی سوکت
- برنامه نویسی موبایل
- بک ترک
- پاسکال
- پایان نامه
- پایتون
- پرولوگ
- جاوا
- جاوا اسکریپت
- جی کوئری
- حوملا
- داده کاوی
- دلفی
- رباتیک
- روبی
- زبان ماشین
- سئو
- ساختمان داده ها
- سایر کتاب ها
- سخت افزار
- سوئیفت
- سی اس اس
- سی پلاس پلاس
- سی شارپ
- سیستم عامل
- سیستم های خبره
- شبکه و مجازی سازی
- شبیه سازی کامپیوتر
- طراحی الگوریتم
- فتوشاپ
- فریم ورک گتنا
- کاتلین
- کالی لینوکس
- کریستال ریپورت
- گزارش کارآموزی
- گوگل
- لیسپ
- متلب
- مقاله
- مهندسی نرم افزار
- نیوک
- هوش مصنوعی
- وب مستر
- ویژوال بیسیک
- نرم افزار و ابزار برنامه نویسی
- وردپرس