【发布时间】:2010-10-18 09:05:12
【问题描述】:
我正在使用一个 ASP.NET MVC 站点,该站点将对除主页之外的所有站点页面使用 CMS 控制器。想法是这样的:
家庭控制器:
- www.site.com
- www.site.com/default.aspx
CMS 控制器:
- www.site.com/about
- www.site.com/agenda/schedule
- www.site.com/monkey/eats/spaghetti
- (几乎所有其他内容)
This page 列出了一些关于如何设置默认页面路由的选项:
- 保留 Default.aspx 未路由和未重定向作为应用程序的入口点 - 使用静态链接将用户带到应用程序的 MVC 部分(或其他静态内容)。
- 在后面的代码中重定向 Default.aspx,或者使用 Page_Load 事件处理程序代码,或者使用 Response.Redirect("~/home") 将它们发送到 Home 控制器(尽管这是一个往返重定向)。
- 重命名或删除 Default.aspx。尽管标记中的警告说 default.aspx 需要确保 ASP.NET MVC 在用户发出“/”请求时被 IIS 激活......实际上在 VS 开发服务器或 IIS7 中都不需要它.默认请求将保持为应用程序根请求“/”,并将被默认路由捕获并发送到主控制器。
我想另一种选择是只使用一个带有某种逻辑的控制器来检测主页案例,但这似乎与这个概念背道而驰。
您建议如何为网站主页设置特定路由?
【问题讨论】:
标签: asp.net-mvc routing