4
我想路由以下URL;如何从URL中获取ID作为参数
/anything/anything-v43243-anything
如何将此路由到特定的控制器,并将该id作为参数进行操作? 文字“任何东西”必须是至少有几个字符的文字。该ID需要以字母“v”开头。 我想这创造友好的URL的
我想路由以下URL;如何从URL中获取ID作为参数
/anything/anything-v43243-anything
如何将此路由到特定的控制器,并将该id作为参数进行操作? 文字“任何东西”必须是至少有几个字符的文字。该ID需要以字母“v”开头。 我想这创造友好的URL的
你可以写一个自定义的路线和适当的约束条件不同的部分:
routes.MapRoute(
"myroute",
"anything/{x}-{id}-{y}",
new { controller = "SomeController", action = "SomeAction" },
new { x = "[a-z]+", y = "[a-z]+", id = @"\d+" }
);
我只需要ID,其余的并不重要;仅用于友好的URL目的。并且id需要以字母“v”开始 – Bernardmoes 2013-05-08 09:24:31
即使不重要,您也需要将其包含在路由模式中,如我的答案中所示:'“anything/{x} - {id} - {y}” '。至于id必须以字母“v”开始,只需调整id约束的正则表达式即可。在我的例子中,它只接受整数值,但如果你想要别的东西,确保你写了相应的正则表达式。 – 2013-05-08 09:41:05