首页 > 技术文章 > WebApi(三)-属性路由 自定义访问路径

wuyubing 2016-03-22 23:54 原文

启用属性路由:

1.在WebApiConfig中加入如下代码:

//属性路由
 config.MapHttpAttributeRoutes();

2.在Global.asax.cs里修改WebApiConfig.Register(GlobalConfiguration.Configuration)为GlobalConfiguration.Configure(WebApiConfig.Register)

注释:如果不修改会报错(原因暂不明确猜测是高版本才可使用属性路由,烦请知道的人回答一下此问题,感谢!)

此时已经启用,可以在Action上加如:

[Route("api/wyb/test")]

访问为http://localhost:13855/api/wyb/test

每个都要写个api比较麻烦可以在Controller上加一个[RoutePrefix("api")],如此Action只需要[Route("wyb/test")]就可以。当然前缀可是[RoutePrefix("api/test")]等等

这样的话要是有其中某个Action不同可以使用一个波浪符号重写路由前缀[Route("~/api/wyb/test")]

除此之外还可以设置名称:[Route("wyb/test",Name="testName")]  (还未验证name可以如何使用)

 

推荐阅读