使用ASP.NET MVC从DB路由分层路径

时间:2009-08-22 11:51:12

标签: c# asp.net-mvc asp.net-mvc-routing

是否可以路由分层路径以映射数据库中的关系,如下所示:

假设我有一个与“页面”(本身)有mtm关系的元组/实体“页面”,我希望能够将每个页面的slug值组合起来找到一个合适的页面,如下所示:

mydomain.com/firstpage/secondpage/thirdpage

其中firstpagesecondpagethirdpage的类型为“page”,第三页引用第二页等。

如何使用ASP.NET MVC路由实现此目的?

1 个答案:

答案 0 :(得分:4)

好的,我想我解决了!

我发现路由时可以使用*(catch-all参数)。

例如:

routes.MapRoute(
    "Pages",
    "{*pageQuery}",
    new { controller = "Page", action = "GetPage" }
);

然后在我的控制器中,我可以使用正则表达式或简单的拆分来解决slug的每个部分。 :)