• ASP.NET Core 1 – قسمت سوم
ASP.NET Core 1 – قسمت سوم
1395/01/26 - 03:10:13 // MVC 5 & 6 // 6 نظر // 4886 بازدید

در 2 بخش گذشته تغریبا با Structure یک پروژه ASP.NET Core 1 آشنا شدید . در این بخش قصد داریم یک محتوای Static را از درون یک Json File دریافت و آنرا به کاربر نمایش دهیم . هدف از این کار بررسی چگونگی ایجاد تغییرات در Startup.CS و در کل تنظیمات بدنه پروژه میباشد .

بسمه تعالی

ASP.NET Core 1 قسمت سوم

در 2 بخش گذشته تغریبا با Structure یک پروژه ASP.NET Core 1 آشنا شدید . در این بخش قصد داریم یک محتوای Static را از درون یک Json File دریافت و آنرا به کاربر نمایش دهیم . هدف از این کار بررسی چگونگی ایجاد تغییرات در Startup.CS و در کل تنظیمات بدنه پروژه میباشد .

در همان پروژه قبلی که ایجاد کردیم ، در Solution Explorer یک Right Click کرده و Add New Item را انتخاب کنید . خوب من قصد دارم یک JSON File به پروژه اضافه کنم .

 

همانطور که در تصویر میبینید ، با جستجوی عبارت JSON در Project Template ها به سادکی میتوانید JSON File را پیدا کنید و نام آنرا هم appsettings بگذارید . خوب فایل که ساخته شود حاوی فقط یک {} خواهد بود .

قصد من این است که یک پیام را درون این فایل قرار داده و آنرا در Browser نمایش دهم . ینی آن Hello word مسخره را که Hard Code شده بود را حذف و محتوای این فایل را نمایش دهم . این یعنی اندکی نزدیک شدن به شرایطی مشابه وجود DataBase . دقت کنید از اینجا به بعد بعضی قسمتها را فقط به صورت تصویر قرار میدهم تا مجبور شوید خودتان عملی کار کنید و فقط Copy/Paste نکنید .

 

خوب این حالا شد محتوای فایل من . خوب حالا اگر این Text درون Browser من نمایش داده شد ، یعنی موفق شده ایم . خوب حالا باید رفت درون Startup.cs و کار را شروع کرد.

درون این فایل یک متد سازنده نیاز دارم . متد سازنده 3 شرط اساسی داشت

1- همنام کلاس

2- الزاما Public است

3- نوع خروجی ندارد

خوب با زدن یک CTOR می توان به سادگی از طریق Code Snippet این متد را ساخت . خوب پس بنویسید CTOR و بعد TAB را سریع بزنید .

 

خوب متد سازنده مانند شکل بالا ساخته میشود . خوب حالا درون این متد سازنده یک متغیر به اسم Builder بسازید .

  1. var builder = new ConfigurationBuilder();  
 

خوب دقت کنید که NameSpace های لازم را خود VS.NET برای شما باید نمایش داده و اضافه کند . اگر این اتفاق به هر دلیلی نیفتاد یادتان باشد که باید

  1. using Microsoft.Framework.Configuration;  
 

به لیست NameSpace های شما افزوده شود .

وظیفه این متغیر تایین Configuration Source من می باشد که در اینجا یک فایل JSON است . خوب حالا در ادامه خواهید دید که توسط متد ADD چگونه سورس را برای این متغیر تایین خواهم کرد .

نکته : من به متد AddJsonFile نیاز دارم و این مند ممکن است برای شما نمایش داده نشود. اگر نبود ، درون فایل Project.Json این Library را اضافه کنید .ینی در کل باید قسمت Dependencies به این شکل در بیاید .

 

خوب حالا با استفاده از متد AddJsonFile فایل Json که ساختم را در استفاده خواهم نمود.

 
  1. var builder = new ConfigurationBuilder()  
  2.   
  3. .AddJsonFile("appsettings.json");  
دقت کنید این متدهای Add میتواند بیشتر از یکی هم باشد و چندین فایل یک به یک پشت هم اضافه شود .

خوب حالا وقت آن است که با استفاده از یک Property این تنظیمات را در سطح پروژه و در Run time با یک دستور Build کنیم .

برای این کار یک Property میسازیم به شکل زیر

  1. public IConfiguration Configuration { getset; }  
 

و حالا درون متد سازنده به این شکل عمل میکنیم

  1. Configuration = builder.Build();  
 

یعنی در کل وضعیت باید مشابه شکل زیر باشد .

 

خوب حالا وقت آن است به سراغ متد Configure برویم و کدهای لازم را بنویسیم.

درون متد Run از به شکل زیر کدها را تصحیح کنید .

 

خوب عبارت greeting به عنوان کلید مشخص کننده عبارتی است که درون فایل appsettings.json قرار دارد و حالا با اجرای پروژه ، پیام درون فایل نمایش داده خواهد شد .

 

در قسمت بعدی همین روند را با افزودن یک سرویس و ارسال درخواست به سرویس انجام خواهیم داد . برای اینکار باید به سراغ متد Configuration Service هم رفته و کدهای لازم را برای آن هم ایجاد کنیم .وجود سرویس مشابه وضعیتی مانند داشتن دیتابیس خواهد بود و مارا به داشتن یک پروژه واقعی نزدیکتر خواهد کرد . هرچند در ادامه مقالات پای Controller و دیتابیس و یک پروژه واقعی هم به میان خواهد آمد .

نکته : مواظب Version های مختلف و Update هایی که برای VS.NET آمده باشید . گاهی عدم همخانی ورژنها سبب دردسر خواهد شد . جهت اطمینان VS.NET خود را به Update 2 بروز رسانی کنید .

بعد از Update شده به Update 2 تازه نکته مهم زیر را بررسی کنید . من خودم ابتدا توجهی به این مسئله نکردم و نصف روز درگیر مشکلات عجیب و غریبی لابلای DLL ها و ... شدم.

نکته خیلی مهم : اگر وقتی به قسمت

Help>About

می روید یک رکورد مانند تصویر زیر ندارید ، VS.NET خود را Update کنید و یک پروژه از صفر در آن بسازید و به کار ادامه دهید . عدم وجود این Update تا پایان برای شما دردسر ساز خواهد بود .

 

https://docs.asp.net/en/latest/ لینک دانلود :

چون اکثرن همه بر روی ویندوز کار می کنیم ، لینک زیر را Follow کنید ولی اکر در OS های دیگر کار میکنید باید از لینک دانلود مناسب استفاده کنید . لطفا اگر کسی تجربه کار روی Mac یا Linux داشت با من تماس بگیرد و زیره کاری خاصی اگر دارد به من هم یاد بدهد .

 

دانلود سورس برنامه

شاد باشید

علی کلاهدوزان
معرفی نویسنده : علی کلاهدوزان

سلام بر دوستان ،
شاید رایج است به عنوان پروفایل کاربر ، چند خطی راجع به خودم بنویسم ، ولی وضعیت کاری و سوابق من با یک جستجوی ساده در گوگل مشخص خواهد شد ، لذا سرتان را با مطالب بی مورد به درد نیاورم بهتر است . اگر نکته خاصی لازم بود بدانید در قسمت "ایلیا سافت در یک نگاه" به احتمال زیاد یافت خواهد شد . جزئیات بیشتر را سوال کنید ، آدرس ایمیل Ali@Kolahdoozan.com همیشه جوابگوی شماست .امیدوارم از مطالب سایت استفاده کرده باشید . شاد و پیروز باشید .

امتیاز به مطلب
           
نظرات کاربران
  • ammar
    1395/03/06 - 10:49:56

    2
    0
    با عرض سلام و خسته نباشید. مرسی بخاطر مطالب مفیدی که میزارید. یه سوال داشتم خدممتون اگه ویژوال استادیو 2015 رو نصب داشته باشم آیا میتونم فقط اپدیت 2 اون رو نصب کنم که بروز بشود. و اینکه اپ دیت 2 را از کجا بگیرم با تشکر
     
    ---
    سلام . بله فقط Update کنید.
     
    موفق باشید  
  • ammar
    1395/03/08 - 10:32:57

    1
    0
    میشه بفرمایید چطور Update کنم
     
    ----------------------------------------------------
    پاسخ : دوست گرامی برای آپدیت به نسخه ی جدید ، از منوی tools در ویژوال استودیو گزینه Extensions and updates رو انتخاب کنین . سپس در پنجره ی باز شده در بخش سمت چپ گزینه ی Updates  رو بزنین . در نهایت در پنجره ی وسط Visual Studio 2015 Update 2 رو انتخاب کنین
     
    Tools / Extensions and Updates / Updates / Visual Studio 2015 Update 2 
  • ammar
    1395/03/08 - 11:48:23

    0
    0
    با تشکر از پاسخ گویی سریع شما سایتتون عالیه و مطلالب هم بروز و مفید هستن با تشکر
     
    ---------------------------------------
     
    پاسخ : ممنون دوست عزیز ، و تشکر از شما که مطالب رو پیگیری می کنین 
  • ammar
    1395/03/08 - 13:02:58

    0
    0
    من ویژوال استادیو را update کردم اما متاسفانه گزینه زیر که توی نکته ها اورده بودید در قسمت About microsoft اضافه نشده است. و هنگامی که یک پروژه جدیدی طبق مثال بالا ایجاد میکنیم پروژه به صورت Asp قدیمی ساخته می شود. Asp.NET and web Tools 2015(RCL Update 1) با تشکر
     
    -------------------------------
     
    پاسخ : اگر امکانش هست عضو گروه تلگرامی ایلیا بشین و بعد مشکل رو مطرح کنین که راحت تر بشه کمکتون کرد .
    ممنونم
     
    لینک عضویت در کانال تلگرام : https://telegram.me/iliasoft
     
    لینک عضویت در گروه تلگرام :  https://telegram.me/joinchat/BzwhewbR4vNzakt6
  • ammar
    1395/03/08 - 13:09:31

    0
    0
    من ویژوال استادیو را update کردم اما متاسفانه گزینه زیر که توی نکته ها اورده بودید در قسمت About microsoft اضافه نشده است. و هنگامی که یک پروژه جدیدی طبق مثال بالا ایجاد میکنیم پروژه به صورت Asp قدیمی ساخته می شود. Asp.NET and web Tools 2015(RCL Update 1) با تشکر
     
    -------------------------------
    پاسخ : اگر امکانش هست عضو گروه تلگرامی ایلیا بشین و بعد مشکل رو مطرح کنین که راحت تر بشه کمکتون کرد .
    ممنونم
    لینک عضویت در کانال تلگرام : https://telegram.me/iliasoft
    لینک عضویت در گروه تلگرام : https://telegram.me/joinchat/BzwhewbR4vNzakt6
     
  • ammar
    1395/03/08 - 13:44:51

    0
    0
    متاسفانه لینک عضویت در گروه اشتباه می باشد
     
     
    —---------------------------------
    لینک عضویت در گروه :
    https://telegram.me/joinchat/BzwhewbR4vNzakt6bxRtSQ

    💾 @iliasoft
    💾 www.iliasoft.ir
     
    براتون ایمیل هم شد دوست عزیز
     
    اگر نتونستین وارد گروه بشین ، اول وارد کانال ایلیا بشین و بعد از اونجا براحتی می تونین وارد گروه بشین . 
ارسال نظر