Skip to main content

ASP.NET MVC ACTION SELECTORS AND ACTION VERBS


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
nonaction method

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.
actionname method


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.

action verb methods

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

Popular posts from this blog

Classes in C# Explained

C# Class Explained A class is nothing but an encapsulation of properties and methods that are used to represent a real-time entity, as explained by Guru99 . For instance, if you want to work with Guest’s data as in our previous DataDriven Web application . The properties of the Guest would be the Id, GuestName, Address, Phone number etc of the Guest. The methods would include the entry and modification of Guest data. All of these operations can be represented as a class in C# as shown below. using System; namespace CsharpnaijaClassTutorial {     public class Guest     {         public int Id { get ; set ; }         public string GuestName { get ; set ; }         public string Address { get ; set ; }         public string WhomToSee { get ; set ; }     ...

ASP.NET MVC Views

Views in ASP.NET MVC Application explained Find a related article By  Steve Smith  and  Luke Latham from Microsoft Corporation here In the Model-View-Controller (MVC) pattern, the  view  handles the application's data presentation and user interaction. A view is an HTML template with embedded  Razor markup . Razor markup is code that interacts with HTML markup to produce a webpage that's sent to the client. In ASP.NET MVC, views are  .cshtml  files that use the  C# programming language  in Razor markup. Usually, view files are grouped into folders named for each of the application's  controllers . The folders are stored in a  Views  folder at the root of the application as shown: The  Home  controller is represented by a  Home  folder inside the  Views  folder.  The  Home  folder contains the views for the  About ,  Contact , and  Index...

ASP.NET MVC Routing

ASP.NET MVC Routing ASP.NET MVC routing is a pattern matching system that is responsible for mapping incoming browser requests to specified MVC controller actions. When the ASP.NET MVC application launches then the application registers one or more patterns with the framework's route table to tell the routing engine what to do with any requests that matches those patterns. When the routing engine receives a request at runtime, it matches that request's URL against the URL patterns registered with it and gives the response according to a pattern match. Routing pattern is as follows A URL is requested from a browser, the URL is parsed (that is, break into controller and action), the parsed URL is compared to registered route pattern in the framework’s route table, if a route is found, its process and send response to the browser with the required response, otherwise, the HTTP 404 error is send to the browser. Route Properties ASP.NET MVC routes are res...