gpt4 book ai didi

asp.net-mvc - 带破折号的 ASP.NET MVC 路由

转载 作者:行者123 更新时间:2023-12-01 04:22:08 25 4
gpt4 key购买 nike

我有 ASP.NET MVC 路由问题。

我准备了以下路由表来映射这样的 url

mywebsite/mycontroller/myaction/14-longandprettyseoname



到参数:

14 => id (integer)

longandprettyseoname -> seo_name (string)


    routes.MapRoute(
"myname",
"mycontroller/myaction/{id}-{seo_name}",
new { controller = "mycontroller", action = "myaction", id = 0, seo_name = (string)null });

routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" });

它适用于上面的 URL,但它有以下类型的 url 的问题

mywebsite/mycontroller/myaction/14-long-and-pretty-seo-name



这有可能使它工作吗?

编辑:
"mycontroller/myaction/{seo_name}-{id}"
似乎正在工作

最佳答案

最明显的方法是使用约束。

由于您的 id 是一个整数,您可以添加一个约束来查找整数值:

new { id = @"\d+" }

这是整个路线:
routes.MapRoute("myname","mycontroller/myaction/{id}-{seo_name}", 
new { controller = "mycontroller", action = "myaction" },
new { id = @"\d+"});

关于asp.net-mvc - 带破折号的 ASP.NET MVC 路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/868361/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com