【问题标题】:Routing an hierarchical path from DB with ASP.NET MVC使用 ASP.NET MVC 从 DB 路由分层路径
【发布时间】:2009-08-22 11:51:12
【问题描述】:

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

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

mydomain.com/firstpage/secondpage/thirdpage

其中firstpagesecondpagethirdpage 属于“页面”类型,第三页引用第二页等。

您将如何使用 ASP.NET MVC 路由来实现这一点?

【问题讨论】:

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


    【解决方案1】:

    好吧,我想我解决了!

    我发现有一个*(catch-all参数)可以在路由的时候使用。

    例如:

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

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

    【讨论】:

    • 您确定要依赖包罗万象吗?这样就否定了使用路由的可能性,因为您最终会将路由逻辑放入控制器中。
    • 嗯,没错。但是,如果我将它放在我的默认路由之后/下方,则只有在没有其他路由满足请求时才会退回到这个路由。但我愿意接受建议和讨论。你有更好的想法吗? :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-06
    • 2011-02-26
    • 2010-12-07
    • 2010-12-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多