【发布时间】:2012-01-04 11:20:20
【问题描述】:
谁能建议一种在 ASP.Net 路由(针对 MVC 3)中完成以下任务的方法?
我希望有一个 URL,其中确定控制器的值实际上是页面 id 的一部分:
/{id}-{controller}/{action}/{further-values}
但我还需要 id 值来包含用于控制器的值,所以在上面如果我们有以下 URL:
/chelsea-football-team/view/2010-2011
理想情况下,我希望 {id} 值为“chelsea-football-team”,控制器为“football-team”,动作为“view”,附加值为“2010-2011” ”。
在路由定义中硬编码控制器值的多个路由没有问题,但我需要能够有多个控制器值。
我知道我可以简单地组合控制器中的值,但这会增加很多额外的重复代码 - 那么这是否可以通过其他方式完成?
我为什么要这样做?因为我需要完整的团队名称,但部分团队名称将始终与控制器名称匹配,所以为什么不在路由中将它们结合起来呢?
【问题讨论】:
-
不应该
{further-values}是{*furtherValues}吗?由于您无法在操作方法中创建连字符参数? -
它只是我所追求的通用表示,而不是实际工作代码。
标签: asp.net-mvc asp.net-mvc-routing