Delete: Requests that a specified URI be deleted.
Get: Retrieves the information or entity that is identified by the URI of the request.
Head: Retrieves the message headers for the information or entity that is identified by the URI of the request.
Options: Represents a request for information about the communication options available on the request/response chain
identified by the Request-URI.
Patch: Requests that a set of changes described in the request entity be applied to the resource identified by the Request- URI.
Post: Posts a new entity as an addition to a URI.
Put: Replaces an entity that is identified by a URI.
Source
Also you can use [AcceptVerbs]
to accept other verbs that are not part of the HttpVerbs enum - eg. [AcceptVerbs("Trace")]
Update: actually attributes are examples of AOP used within the .NET framework. So those attributes are some built-in implementations that handles HTTP stuff for you so you don’t have to put those code in all of your controller action methods.
Aspect-oriented Programming and Code Contracts in ASP.NET MVC
Aspect Oriented Programming in ASP.NET MVC