原文:http://www.asp.net/web-api/overview/web-api-routing-and-actions/attribute-routing-in-web-api-2 属性路由,attribute routing,是web api 2 提供的,而早期的称为约定路由, convention-based routing.在web api 2中,两种可以共存. 以下是原文的思维导图总结: 代码片段: 怎么启用属性路由? public static class WebApiC…
1) 启用.在App_Start - WebApiConfig.cs下 //在Register函数添加如下代码: config.MapHttpAttributeRoutes(); 2) 使用.Controller中使用Route关键字 [Route("customers/{customerId}/orders")] public IEnumerable<Order> GetOrdersByCustomer(int customerId) { ... } 3) 与基于约定的路…
启用属性路由: 1.在WebApiConfig中加入如下代码: //属性路由 config.MapHttpAttributeRoutes();…
刚才忘了说了,在控制器名重名的情况下,特性路由是不生效的.不然的话就可以利用特性路由解决同名的问题了. 而且这种不生效是真的不生效,不会提示任何错误,重名或者什么的,直接会报告404,所以也是个坑.…
属性路由(attribute routing)是最新被引进到MVC5中的,它和传统路由共同组成了mvc5中的两种主要路由. 1. 高质量的url应该满足以下几点 域名便于记忆和拼写 简短 便于输入 可以反映出站点结构 应该是“可破解的”,用户可以通过移除url的末尾,进而到达更高层次的信息体系结构(URLs that are hackable to allow users to move to higher levels of the information architecture by ha…
系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 题外话:由于这个技术点是新学的,并不属于原系列,但借助了原系列的项目背景,故命名外传系列,以后也可能在这个系列中附加一些新的技术. 前言 在Web Api 2.0中,提出了一种新的配置路由方式——基于特性的路由(Attribute-based Routing),在我们之前介绍的配置路由方式称为——基于公约的路由(Convention-based Routing),新的路由配置方式同样应用在MVC…
从WebApi 1迁移到WebAPI 2要改变配置代码如下: WebApi 1: protected void Application_Start() { // WARNING - Not compatible with attribute routing. WebApiConfig.Register(GlobalConfiguration.Configuration); } WebAPI 2: protected void Application_Start() { // Pass a del…
Attribute Routing 系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 题外话:由于这个技术点是新学的,并不属于原系列,但借助了原系列的项目背景,故命名外传系列,以后也可能在这个系列中附加一些新的技术. 前言 在Web Api 2.0中,提出了一种新的配置路由方式——基于特性的路由(Attribute-based Routing),在我们之前介绍的配置路由方式称为——基于公约的路由(Convention-based Routing…
一.属性路由的概念 路由让webapi将一个uri匹配到对应的action,Web API 2支持一种新类型的路由:属性路由.顾名思义,属性路由使用属性来定义路由.通过属性路由,我们可以更好地控制Web API中的URI.例如,我们可以轻松创建描述资源层次结构的URI.一个栗子:api/customers/1/orders,我们很容易猜到这个路由的作用是找Id为1的客户的所有订单.但是基于约定的路由很难创建这样的uri. 早期的基于约定的路由仍然完全受支持.实际上,我们可以在同一个项目中组合这两…
如何启用属性路由并描述属性路由的各种选项? Why Attribute Routing? Web API的第一个版本使用基于约定的路由.在这种类型的路由中,您可以定义一个或多个路由模板,这些模板基本上是参数化字符串.当框架收到请求时,它会将URI与路由模板进行匹配. 基于约定的路由的一个优点是模板在单个位置定义,并且路由规则在所有控制器上一致地应用.遗憾的是,基于约定的路由使得很难支持RESTful API中常见的某些URI模式.例如,资源通常包含子资源:客户有订单,电影有演员,书有作者,等等.…