2011-09-28 16 views
5

Tengo un proyecto ASP.NET 3.5 WebForms existente y he agregado ASP.NET MVC al proyecto. Las páginas existentes funcionan bien y también lo hacen las nuevas controladoras & vistas. Sin embargo, cuando implemente en IIS 7, el documento predeterminado (default.aspx) ya no funciona. Puedo verlo si lo escribo explícitamente pero 'xyz.com' no funciona, obtengo un 404. Por el contrario, funciona bien en Cassini.El documento predeterminado (default.aspx) en IIS no funciona después de agregar MVC y el enrutamiento a un proyecto de WebForms

¿Cómo consigo que el documento predeterminado vuelva a funcionar sin perder el nuevo material de MVC?

Respuesta

9

que añade lo siguiente al archivo Global.asx.cs y el documento predeterminado vuelve a funcionar.

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); 
    } 
+0

¡Gracias, esto me ayudó a solucionar mi problema! – Netricity

0

¿Tiene documentos predeterminados habilitados para su aplicación IIS, y es default.aspx en la lista? Simplemente revise esos, no puedo pensar en otra cosa que afecte la publicación de la página default.aspx. IIS debe ser algo como esto:

IIS Default Document

+0

Sí, tiene eso. Solo para aclarar, funcionaba bien en IIS 7 hasta que MVC y el enrutamiento se agregaron al proyecto. – GiddyUpHorsey

Cuestiones relacionadas