معرفی Action Selector ها در MVC
پنجشنبه 25 خرداد 1396ASP.NET MVC دارای قابلیت ها و نکات بسیاری است، یکی از بخش های مهم در MVC استفاده درست و صحیح از Action Selector ها است. این Action Selector ها می تواند بسیار مفید باشد و در خیلی از مواقع، کار راه انداز باشد. در این مقاله به معرفی این Action Selector ها می پردازیم.
Action Selector چیست؟
Action Selector در اصل یک صفت است که می توان آن را روی هر اکشن متدی در داخل کنترلر استفاده کرد. Action Selector به موتور مسیریاب برنامه کمک می کند تا برای درخواست های دریافت شده، متد صحیح و درست را انتخاب کند. در MVC5، Action Selector ها بسیار مفید و محبوب هستند. MVC5 دارای سه نوع Action Selector است.
1- Action Name
2- Non Action
3- Action Verbs
Action Name
صفت Action Name به ما این اجازه را می دهد تا یک نام برای اکشن انتخاب کنیم که این نام می تواند با نام متد تفاوت داشته باشد.به این معناست که شما می توانید URL مربوطه به Action Name تنظیم شده را فراخوانی کنید. برای مثال می توانید کد زیر را ببینید.
مثالی که در بالا نمایش داده شده است، یک Action Name با نام findid برای متد GetById تنظیم کرده است. بنابراین از این به بعد نام این اکشن به جای GetById نام انتخابی خودمان یعنی findid خواهد بود. این اکشن متد در صورتی که آدرس http://localhost/Employee/findid/1 را در مرورگر باز کنید فراخوانی خواهد شد و دیگر نیازی به استفاده از http://localhost/Employee/getbyid/1 نخواهد بود.
Non Action
صفتNon Action به ما کمک می کند تا مشخص کنیم که یک متد public که در کنترلر داریم جز اکشن متد ها نیست و صرفا یک متد ساده است. استفاده اصلی صفت Non Action زمانی است که شما یک متد public در کنترلر خود داشته باشید ولی این متد رفتاری مانند اکشن متد ها نداشته باشد.
برای مثال متد public با نام GetEmployee نمی تواند مانند دیگر اکشن متد ها فراخوانی شود. کد نمونه در زیر قرار داده شده است.
Action Verb
Action Verb ها در API های جدیدتر بسیار پرطرفدار هستند. این صفت در اصل زمانی استفاده می شود که شما بخواهید یک اکشن متد را بر اساس نوع درخواست Http مدیریت کنید. در اینجا شما می توانید 2 اکشن متد متفاوت ولی با نام یکسان تعریف کنید، ولی یک اکشن متد زمانی که درخواست HTTP Get فرستاده می شود استفاده می شود و اکشن متد دیگر زمانی یک درخواست از نوع HTTP Post فرستاده می شود، استفاده می شود.
معروف ترین Action Verb هایی که در چارچوب MVC پشتیبانی می شوند عبارتند از HttpGet، HttpPost، HttpPut، HttpDelete، HttpOptions و HttpPatch. در چارچوب MVC اگر شما از صفت خاصی روی متد استفاده نکنید، به صورت پیشفرض آن متد برای درخواست های GET در نظر گرفته می شود.
در کل متد های Http ارائه دهنده درخواست هایی هستند که شرایط ارتباط و اطلاعات مربوط به آن را دریافت کنند و این درخواست ها توسط Web Server پشتیبانی می شوند.
آموزش asp.net mvc
- ASP.net MVC
- 2k بازدید
- 6 تشکر