• ASP.NET Core 1 – قسمت دهم
ASP.NET Core 1 – قسمت دهم
1395/01/28 - 00:38:40 // MVC 5 & 6 // 0 نظر // 381 بازدید

وارد مقاله دهم شدیم و در این قسمت است که باید کم کم پروژه را به MVC Middle Ware مسلح کرده و آرام آرام حداقل یک Controller در پروژه داشته باشیم . همانطور که میدانید ، در یک پروژه وب از نوع MVC با Model و View و Controller سر و کار داریم .

بسمه تعالی

ASP.NET Core 1 قسمت دهم

وارد مقاله دهم شدیم و در این قسمت است که باید کم کم پروژه را به MVC Middle Ware مسلح کرده و آرام آرام حداقل یک Controller در پروژه داشته باشیم . همانطور که میدانید ، در یک پروژه وب از نوع MVC با Model و View و Controller سر و کار داریم . در این بخش به صورت ضمنی نگاهی به Controller هم خواهیم انداخت ولی اصل موضوع کار با یک پروژه به صورت MVC به قسمتهای بعدی تعلق خواهد داشت .

دوستان دقت کنید که کم کم باید به سراغ VS.NET بر روی MAC یا Linux هم رفته و حتی از سوار کردن پروژه روی Appache یا ... هم بهره برداری کنید . ظاهرا SQL 2016 را هم میشود بر روی Linux و ... هم نصب کرد و این سبب میشود آرام آرام از دست سرورهای ویندوز هم خلاص شویم . البته سرورهای ویندوز ایرادی ندارند فقط کمی هزینه بر تر می باشند . بگذریم و به ادامه بحث بپردازیم .

همانطور که میدانید ، حتی این امکان وجود دارد که کل پروزه را مبتنی بر Middle Ware نوشته و به پایان برسانیم ، ولی این کار توجیه منطقی ندارد و از هر نظر سخت و درگیر کننده خواهد بود . هدف ما استفاده از تواناییهای MVC در ایجاد HTML Page ها و ارتباط با Api ها می باشد .

برای رسیدن به هدف توضیح داده شده ، باید ابتدا MVC Frame Work را در پروژه برقرار و آنرا به درستی Setup نمود .

قدم اول نصب MVC Package خواهد بود . بعد از آن هدف ایجاد MVC Services میباشد و بعد از آن ایجاد MVC Middle Ware در پروژه میباشد .

 

برای نصب و تنظیمات MVC Package این بار از طریق Nuget عمل نکرده و از طریق فایل Project.Json این مراحل را انجام خواهیم داد . برای ایجاد یک Dependency جدید کافی است فقط یک نام آنرا مانند بقیه ذکر کنیم .

این خط را کافی است اضافه کنید .

"Microsoft.AspNet.Mvc": "6.0.0-rc1-final"

و پس از آن خواهید که پروزه فایلهای لازمه را Fetch کرده و آماده خواهد شد .

خوب وقتی در بدنه MVC در حال کاریم ، انتظار داریم Request ها به Controller ها پاس داده شوند پس الان به یک Controller ساده نیاز داریم . مرحله بعدی ایجاد Controller خواهد بود .

به پروژه یک Folder جدید به نام Controllers اضافه کنید . به این فولدر باید یک Charp Class اضافه نمود .

 

از کلاس یا Interface خاصی هم لازم نیست ارث بری کنید . حالا یک متد از نوع String و به نام Index درون آن ایجاد کنید . کلن به شکل زیر عمل کنید .

 

سناریو این است که در صورت مراجعه به Root پروزه در Browser متد Index درون Controller عمل کند .

برای اولین قدم از درون WWWROOT آن فایل HTML را که Index.Html نام داشت ، حذف میکنیم چرا که الان دیگر Controller داریم و براش نمایش پیام و .... می توان از آن استفاده نمود. اصولن دستور یا دستورات مرتبط به MVC را در Middle Ware باید بعد از خط کد مرتبط با File Server نوشت.

حالا 2 انتخاب خواهم داشت . دستور UseMVC و دستور UseMVCWithdefaultRoute و در اینجا من از دومی استفاده خواهم نمود . در قسمتهای بعدی تفاوت اینها و ریزه کاریها رو بررسی خواهیم نمود .

خوب حالا یکبار Save زده و پروژه را اجرا و به پیام خطای زیبا بر خواهیم خورد . علت این پیام دوباره تعریف نشدن Object مورد نظر در سرویسها می باشد .

 

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

 

حالا دیگر پروژه را اجرا و پیام درون Controller و در اصل متد درون Controller را مشاهده کنید .

 

و د راینجا دیگر میتوانم بگویم دانش شما برای به سراغ اصل و بنیان MVC 6 تا حدود منطقی کافی است و از بخض بعدی به سراغ Controller و جزئیات آن در MVC 6 یا همان MVC Core 1 خواهیم رفت .

دانلود سورس پروژه

موفق باشید .

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

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

امتیاز به مطلب
           
نظرات کاربران
ارسال نظر