Asp.net 将MVC和路由添加到WebForms项目后,IIS中的默认文档(default.aspx)不起作用

Asp.net 将MVC和路由添加到WebForms项目后,IIS中的默认文档(default.aspx)不起作用,asp.net,asp.net-mvc,iis-7,url-routing,Asp.net,Asp.net Mvc,Iis 7,Url Routing,我有一个现有的ASP.NET3.5WebForms项目,并已将ASP.NETMVC添加到该项目中。现有页面可以正常工作,新的控制器和视图也可以正常工作。但是,当我部署到IIS7时,默认文档(default.aspx)不再工作。如果我显式地键入它,我就可以得到它,但是'xyz.com'不起作用-我得到一个404。相比之下,它在卡西尼号上运行良好 如何在保留新的MVC内容的同时使默认文档重新工作。您是否为IIS应用程序启用了默认文档,并且列表中是否有default.aspx?只要仔细检查一下,我想不

我有一个现有的ASP.NET3.5WebForms项目,并已将ASP.NETMVC添加到该项目中。现有页面可以正常工作,新的控制器和视图也可以正常工作。但是,当我部署到IIS7时,默认文档(default.aspx)不再工作。如果我显式地键入它,我就可以得到它,但是'xyz.com'不起作用-我得到一个404。相比之下,它在卡西尼号上运行良好


如何在保留新的MVC内容的同时使默认文档重新工作。

您是否为IIS应用程序启用了默认文档,并且列表中是否有
default.aspx
?只要仔细检查一下,我想不出还有什么会影响default.aspx页面的服务。IIS应该如下所示:


我将以下内容添加到
Global.asx.cs
文件中,默认文档再次工作

    public static void RegisterRoutes(RouteCollection routes)
    {
        // *** This Line ***
        routes.IgnoreRoute("");                                     // Required for the default document in IIS to work
        // *****************
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
        routes.IgnoreRoute("{resource}.aspx/{*pathInfo}");

        routes.MapRoute(
            "Default",                                              // Route name
            "{controller}/{action}/{id}",                           // URL with parameters
            new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
        );
    }

    protected void Application_Start(Object sender, EventArgs e)
    {
        RegisterRoutes(RouteTable.Routes);
    }

是的,有这个。只是想澄清一下,在项目中添加MVC和路由之前,它在IIS 7下运行良好。谢谢,这帮助我解决了我的问题!