• آموزش یک پروژه ASP.NET MVC 5 از ابتدا تا انتها – سیستم ویدئو کلوپ – بخش نهم
آموزش یک پروژه ASP.NET MVC 5 از ابتدا تا انتها – سیستم ویدئو کلوپ – بخش نهم
1395/03/21 - 11:23:54 // MVC 5 & 6 // 0 نظر // 4760 بازدید

وقتی در روند ایجاد Custom Route های مختلف چندین Route تعریف کنیم و کم کم فایل ما شلوغ شده و ضمننا اگر نام یک Action Method را عوض کنیم ، ممکن است روند Routing ما به دلیل Update نشدن اتوماتیک فایل CouteConfig در هنگام تغییر در Controller ها و ... با مشکل روبرو شود. برای حل این مشکل Microsoft یک روش بهتر و جدیدتر به نام Attribute Routing معرفی نموده است.

بسمه تعالی

آموزش یک پروژه ASP.NET MVC 5 از ابتدا تا انتها سیستم ویدئو کلوپ بخش نهم

وقتی در روند ایجاد Custom Route های مختلف چندین Route تعریف کنیم و کم کم فایل ما شلوغ شده و ضمننا اگر نام یک Action Method را عوض کنیم ، ممکن است روند Routing ما به دلیل Update نشدن اتوماتیک فایل CouteConfig در هنگام تغییر در Controller ها و ... با مشکل روبرو شود. برای حل این مشکل Microsoft یک روش بهتر و جدیدتر به نام Attribute Routing معرفی نموده است.

در این روش شما مستقیما بر روی Action Method مورد نظر خود بر اساس یک خط کد ساده به شکل Attribute یک Route دلخواه ایجاد می کنید.

شاید سوال کنید خوب اگر Attribute Routing جدیدتر و بهتر است ، چرا در بخش قبلی Custom Routing را به روش ایجاد Route در فایل تنظیمات بررسی کردیم ؟ . پاسخ این است که این کار لازم بود ، چرا که شاید شما یک پروژه از قبل نوشته شما را تحویل بگیرید و نیاز به دستکاری و رفع مشکل داشته باشید ، ولی اگر پروژه جدیدی از صفر داشتید ، بیشتر به Attribute Routing اعتماد کنید.

خوب حالا ببینیم برای داشتن Attribute Routing چه باید کرد. اول مشابه زیر آنرا فعال کنید و Route تعریف شده قبلی را هم حذف کنید.

حالا به MoviesController بر میگردیم تا تغییرات لازم را ایجاد کنیم.

دقت کنید که عبارت range  باید به : چسبیده باشد .  در تصویر ایراد دارد، ولی در سورس کد درست است. 

همانطور که مشاهده میکنید حتی Constraint هم یکی برای تایین چند رقمی بودن مقدار ماه و دیگری برای تعیین رنج عدد ورودی میتوان تایین نمود.

[Route("Movies/released/{year}/{month:regex(\\d{2}):range(1,12)}")]

در اینجا بحث Routing هم به پایان رسید و حالا میتوان به سراغ View ها رفته و در بخش بعدش آنها را نیز به شکل دقیقتری بررسی نمود.

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

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

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