asp.net-mvc – 具有.NET MVC 5属性路由的贪婪段

我想定义一条路线如下 –

[Route("clients/{*code}/{id:guid}/update")]
public ActionResult Update(string code, Guid id)
{
}

代码将是“foo / bar / xyz”。

不幸的是,开箱即用的MVC不支持Route定义中的贪心参数。

这以前是solved使用旧的MVC路由约定,但是我想把它作为一个RouteAtribute定义。

据我所知,你不能直接做到这一点。但是,您应该可以使用IIS模块UrlRewrite,并将中间的贪心参数重写到具有贪心参数的结尾的查询。

所以一个客户端查询:clients / {* code} / {id:guid} / update
你的web api看到客户端/ {id:guid} / update / {* code}

http://stackoverflow.com/questions/30057833/greedy-segment-with-net-mvc-5-attribute-routing

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:asp.net-mvc – 具有.NET MVC 5属性路由的贪婪段