我希望大量定制应用程序处理路由的方式。从本质上讲,我想要实现这样的过程:
- 用户请求网址:/ custom-url-part-1 / custom-url-part-2 / gallery / 1 / date
- 应用程序在路径的数据库表中查找匹配项
- 应用程序返回匹配的路径记录,包括:
- 应用程序查看RouteUrl并解析任何可选参数{pagenum},{orderby}
- 应用程序检查是否已在请求的Url中提供这些内容
- 如果没有提供,它会检查路线记录的“默认值”以获取它们
- 参数在RouteData默认值
中传递
- 返回路线数据
这样做的核心原因是我希望拥有一个动态的路由表,它由CMS修改,以便存储针对路由的某些数据。
我的问题是:
我如何复制MVC将Uri与路径匹配的方式?我需要基本查看数据库表并根据Uri返回相应的Route。与标准ASP.NET MVC功能在RouteCollections中的显示方式非常相似,并使用正确的路由。
我意识到我基本上重写了MVC内置的一些功能,并用数据库替换了RoutesCollection ......但我需要这样做才能实现两件事:
- 这些路线完全是动态的,流动的并由CMS控制。
- 针对那些无法从Uri本身推断的路由存储数据(例如,我可能希望在用户点击特定路由时发送PageId,但我不希望在该路径中使用PageId URI)。
醇>