0

我正在尝试将基本 CMS 添加到使用“url-formatted-string”作为 CMS 项目 ID 的 MVC 网站。

我花了很多时间试图满足下面列出的要求。但现在我想知道“甚至有可能做到这一点吗?”

.

第一件事是我想支持“开箱即用”的 MVC url。

/news => NewsController.Index - I will set this to get the latest X items

/news/create => NewsController.Create

/news/edit/8 => NewsController.Edit - uses 8 as the id parameter

但我还想支持/news/ 部分中的CMS 项目,并通过纯文本 URL 对其进行过滤。

/news/news-item-title => NewsController.Display - uses "news-item-title" as an id parameter

/news/search/search-term => NewsController.Search - uses "search-term" as a string parameter

最后,我想要一个默认的控制器/动作来获取没有定义控制器或动作的 URL。(并为此适应正斜杠)。例如:

/services/consulting => CMSPageController.Index - defaults to CMSPage Controller and uses "services/consulting" as an id parameter

/about-us  = CMSPageController.Index - defaults to CMSPage Controller and uses "about-us" as an id parameter

这一切都是可能的,还是我应该放弃与 route_config 的斗争?

4

1 回答 1

0

最终我在这里偶然发现了答案:

来自 ASP.NET MVC CMS 数据库的动态路由

答案是提供一个自定义路由约束来检查数据库是否存在 CMS url。

于 2013-07-21T10:22:53.683 回答