انواع تابع در کنترولر


آموزش MVC –> جلسه اول –> قسمت پنجم

در مقاله پیشین با ارسال انواع پارامترها به اکشن آشنا شدیم . در این بخش می خواهیم انواع تابع را در کنترولرها بررسی کنیم .

شرایط اکشن بودن تابعی در کنترولر :

نکته مهم : لزوما هر تابعی در کنترولر ، اکشن نیست . بعنوان مثال اگر Access Modifier تابع را private یا protected یا internal تعریف کنیم آن تابع دیگر اکشن نیست . مانند توابع زیر :

 
private void NonAction1()
{
    // Do Something…
}
protected void NonAction2()
{
    // Do Something…
}
internal void NonAction3()
{
    // Do Something…
}
protected internal void NonAction4()
{
    // Do Something…
}

ممکنه گاهی خود تابع اکشن باشد و public باشد ولی در بالای آن ، attribute NonAction تعریف کنیم . بنابراین آن تابع هم اکشن نیست . مانند تابع زیر :

 
[System.Web.Mvc.NonAction]
public void NonAction5()
{
    // Do Something…
}

نکته کلی : تابعی اکشن است که اولا public باشد و دوما اتریبیوت NonAction هم نداشته باشد .

تغییر نام اکشن :

اگر بخواهیم نام اکشن را توسط اتریبیوت تغییر دهیم داریم :

 
[System.Web.Mvc.ActionName(“SafariAction”)]
public void Learn1100()
{
    // Do Something…
}

از این پس نام اکشن Learn1100 به SafariAction تغییر کرده است . مفهوم Routing یا Mapping نیز همین است . برای اطلاعات بیشتر به وب سایت asp.net مراجعه شود .

خب دوستان عزیز ، در مقاله بعدی اکشن همراه با خروجی را بررسی میکنیم . با ما همراه باشید …smiley



دیدگاه ها :