ASP.NET MVC ACTION SELECTORS AND ACTION VERBS
Action Selectors
Action Selector is basically an attribute,
which you can apply on any action method in MVC Controller. It helps your
routing engine to select the correct method to handle the particular request.
In MVC 5, Action Selectors are very helpful and popular. MVC 5 includes 3
Action Selectors attributes.
1. NonAction
2. ActionName
3. ActionVerbs
NonAction
Non Action selector attribute helps us to indicate that our public
method of a Controller is not an Action method. The main use of Non Action
attribute is when you want public method in a Controller, that is not treated
it as an Action method. We
create a nonaction for the purpose of code reusability in our controller class.
Example
ActionName
ActionName attribute is used to change the
name of the action at runtime. In another word, Action
Name attribute allows us to specify the different Action Names rather than
method names. It means that you can hit URL in the Browser by your Action Name
rather than the method name given above on your Action Result method. The
example is given below.
Action Verbs
Action Verbs are very popular nowadays in
APIs. This selector is basically used when you want to control the Action
method based on Http request method. Here, you can define two different Action
methods with the same name but one Action method acts or responds to HTTP Get
request method and another Action method responds to HTTP Post request method.
The famous Action Verbs supported by MVC
framework are HttpGet, HttpPost, HttpPut, HttpDelete, HttpOptions &
HttpPatch. Http Method represents a request for the information about its
communication options, which are supported by the Web Server.
We can’t overload our action methods like we do in C#. But
with the help of action verbs, we can overload our action method. We select a
different action method depending upon the request with the help of action
verbs.
Here, in ASP.NET MVC, we have few action verbs
but they are extensively used in Web APIs. But here, in MVC, we normally use
two action verbs.
- HttpGet
It is used to handle GET Request.
- HttpPost
It is used to handle POST Request.
But if you don’t apply any action verb, then
this action will be treated as GET request action as shown below.
The image above shows example of both GET and POST
Verbs on Edit Action Method.
There are some other types of Actions verbs
which also exist like
HttpPut for updation and HttpDelete for
deletion
There are some key points to keep in mind.
- Action methods can’t be private
or protected, they must be public.
- Action methods can’t be static.
Thank you
Comments
Post a Comment