Mvc webapi route rewriting and mvcwebapi route
Modify app_start/webapiconfig. cs
Using System. web. http; using System. web. routing; using Ninject; using TxMobile. filters; using TxMobile. models; using WebApiContrib. ioC. ninject; namespace TxMobile {// <summary> // WebApi route configuration /// </summary> public static class WebApiConfig {// <summary> // constructor // /</summary> // <param name = "config"> </param> public static void Register (HttpConfiguration config) {config. filters. add (new ValidateAttribute (); IKernel kernel = new StandardKernel (); kernel. bind <ICommentRepository> (). toConstant (new InitialData (); config. dependencyResolver = new NinjectResolver (kernel); config. routes. mapHttpRoute (name: "productlist", routeTemplate: "{controller}/prod/list", defaults: new {controller = "IAP", action = "ProductList"}, constraints: new {httpMethod = new HttpMethodConstraint ("GET", "Post")}); config. routes. mapHttpRoute (name: "productbuy", routeTemplate: "{controller}/prod/buy", defaults: new {controller = "IAP", action = "ProductBuy"}, constraints: new {httpMethod = new HttpMethodConstraint ("GET", "Post")}); config. routes. mapHttpRoute (name: "DefaultApi", routeTemplate: "{controller}/{action}/{id}", defaults: new {id = RouteParameter. optional });}}}
Note:
1. You can rewrite an action to write a url in any format.
2. You must put the rewritten action routing code before the DefaultApi.