在Visual Studio 2008中创建新的ASP.NET MVC项目时,默认情况下会有一个Default.aspx页面.它有一条线
在其Page_Load函数中,它只是重定向到"/"以完成路由过程.
public void Page_Load(object sender, System.EventArgs e) { HttpContext.Current.RewritePath(Request.ApplicationPath); IHttpHandler httpHandler = new MvcHttpHandler(); httpHandler.ProcessRequest(HttpContext.Current); }
我试图删除Default.aspx,结果是仍然可以访问默认URI" http:// localhost:2574 / ".那么,为什么还要有这样的Default.aspx呢?
旧版本的IIS需要一个启动文档,它还可以让您右键单击以获取"在浏览器中查看"选项.
这里发生的是,请求的Url(Default.aspx)被重新写入应用程序根"/",然后从Webform HTTP处理程序转移到MvcHttpHandler.对"/"的请求将匹配默认路由条目(向下显示)...最终将我们发送到其中一个路由控制器.
这里有用的链接