使用 ASP.NET MVC 从数据库路由分层路径

发布于 2024-08-02 19:21:27 字数 327 浏览 7 评论 0原文

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

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

mydomain.com/firstpage/secondpage/thirdpage

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

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

Is it possible to route an hierarchical path to map a relation from the database as follows:

Let's say I have an tuple/entity "page" with an m-t-m relation to a "page" (itself) and I want to be able to combine the slug-value of each page to find an appropriate page, like so:

mydomain.com/firstpage/secondpage/thirdpage

where firstpage, secondpage and thirdpage are of type "page" and the third page references to the second page etc.

How would you implement this with ASP.NET MVC routing?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

乙白 2024-08-09 19:21:27

好吧,我想我已经解决了!

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

例如:

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

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

Ok, think I solved it!

I found out that there is a * (catch-all parameter) that can be used when routing.

For example:

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

Then in my controller I can use regular expressions or a simple split to resolve each part of the slug. :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文