diegodfsd
5/19/2012 - 7:46 PM

MVC Restful API

MVC Restful API

Exemplo de roteamento para que o mvc considere o HttpMethod como uma constraint

routes.MapHttpRoute("Route1", "{controller}/{id}/transactions/history", new { controller = "Account", action = "GetTransactionHistory" });
 routes.MapHttpRoute("Route2", "{controller}/{id}/transactions", new { controller = "Account", action = "GetTransactionHistory" }, new { httpMethod = new HttpMethodConstraint(new string[] { "GET" }) });
 routes.MapHttpRoute("Route3", "{controller}/{id}/transactions", new { controller = "Account", action = "CreateTransaction" }, new { httpMethod = new HttpMethodConstraint(new string[] { "POST" }) });
 routes.MapHttpRoute("Route4", "{controller}/{id}", new { controller = "Account", action = "GetAccount" }, new { httpMethod = new HttpMethodConstraint(new string[] { "GET" }) });
 routes.MapHttpRoute("Route5", "{controller}/{id}", new { controller = "Account", action = "CreateAccount" }, new { httpMethod = new HttpMethodConstraint(new string[] { "POST" }) });

ReferĂȘncia
http://dylanbeattie.blogspot.com.br/2009/10/restful-routing-in-aspnet-mvc-2-preview.html