在attributerouting的文档中,有一系列警告说“performance enhancements when matching routes”不起作用。他们在谈论什么样的性能增强,以及在基于生产的系统中的性能意味着什么?是否足够重要以至于不考虑在生产系统上进行归属?
关于自定义路由处理程序和查询字符串参数约束的更多细节怎么样? “自定义”和查询字符串约束的含义是数据类型约束吗?
我想更多地了解这一点,并在我的用例中衡量它的影响,以判断web-api的属性路由包是否适合我的生产API。
答案 0 :(得分:4)
<强>概要强>
根据the ASP.NET v5 RTM Beta或source进行评估,因为包含AttributeRouting 。
<强> DETAIL 强>
合并
AttributeRouting已经被AR的包装所有者Tim McCall的合作吸收到ASP.NET v5 RTM中。 v5自2013年2月开始测试。请参阅nightly build上的ASP.NET Roadmap。
自定义路由处理程序
参数约束
基于HttpVerbAttribute的类支持(来自the ASP.NET Documentation site的示例):
参数类型约束
[HttpGet("controller/{id:int}")]
public string Get(int id) { ... }
可选参数
[HttpGet("optional/{opt1?}/{opt2?}")]
public string Optional(string opt1 = null, string opt2 = null) { ... }
属性内默认值
[HttpGet("default/{default1=D1}/{default2=D2}")]
public string Default(string default1, string default2) { ... }
通配符参数
[HttpGet("wildcard/{*wildcard}")]
public string Wildcard(string wildcard) { ... }