我正在开发一个混合了 MVC 的 Web 表单 Web 应用程序。我已按照此页面http://www.packtpub.com/article/mixing-aspnet-webforms-and-aspnet-mvc的说明进行操作,它在 VS2010 开发人员服务器中运行良好,但是当我尝试将其发布到启用 MVC 时IIS 6 浏览器在登录后不会自动重定向到 default.aspx,并且我在应用程序的根目录处收到 404 错误。
我的 Global.asax.cs 看起来像这样:
protected void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);
}
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.IgnoreRoute("{resource}.aspx/{*pathInfo}");
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
}
如果我在 Application_Start 方法中注释掉对 RegisterRoutes 的调用,则自动重定向到 default.aspx 可以工作,但是 MVC 部分会失败。
我需要一些有关如何设置路由以启用自动重定向到 default.aspx 的帮助,同时启用 MVC 路由。MVC 部分位于特定路径下,如下所示:myserver/applicationname/mvcparts。
Asp.Net MVC 3 安装在我发布的开发人员机器和服务器上。