我正在开发一个CMS,它将用户内容存储在数据库表中,如下所示:
---------------------------------------- PageId | PageTitle(Unique) | Content ---------------------------------------- 1 | PageOne | ... 2 | PageTwo | ... 3 | PageThree | ... 4 | PageFour | ...
现在我在根目录下有一个aspx页面“SitePageFactory.aspx”,当查询字符串传递给它时提供动态内容,假设传递/SitePageFactory.aspx?pgid=1然后它为PageOne提供内容。
上述概念运作良好。
现在我想进一步向此应用程序添加动态路由,并将 /SitePageFactory.aspx?pgid=1 修改为 /PageOne.aspx 但无法在根级别执行。
注意:目前我可以像 /SitePageFactory/PageOne.aspx 那样执行路由,但我希望结果位于根级别。
感谢。
答案 0 :(得分:0)
您可以使用ASP.NET路由来完成此任务。
路由让您将以下网址映射到:www.mysite.com/pages/pageone到aspx页面。您网址中的不同部分可以映射到您可以在aspx中访问的路由参数。
Here is the MSDN documentation用于路由。
您可以添加以下路线:
routes.MapRoute("ViewPage",
"<PageName>",
new { controller = "Page", action = "ViewPage" }
这会将网址www.yourdomain /映射到Page控制器ViewPage方法。