ASP.NET MVC sur IIS 6 - générique - cartographie de la demande entrante ne correspond à aucun itinéraire

J'ai essayé de configurer ma Bêta 1 MVC application sur IIS 6 et impossible de le faire fonctionner correctement. J'ai ajouté un mappage de caractères Génériques pour les .net DLL isapi comme suggéré dans d'autres articles de blog, mais obtiens l'erreur suivante lorsque j'accède à la racine du site web:

The incoming request does not match any route.
..
[HttpException (0x80004005): The incoming request does not match any route.]
   System.Web.Routing.UrlRoutingHandler.ProcessRequest(HttpContextBase httpContext) +147
   System.Web.Routing.UrlRoutingHandler.ProcessRequest(HttpContext httpContext) +36
   System.Web.Routing.UrlRoutingHandler.System.Web.IHttpHandler.ProcessRequest(HttpContext context) +4
   HCD.Intranet.Web.Default.Page_Load(Object sender, EventArgs e) +81
   System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +15
   System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +33
   System.Web.UI.Control.OnLoad(EventArgs e) +99
   System.Web.UI.Control.LoadRecursive() +47
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1436

Je suis en utilisant la valeur par Défaut.page aspx fourni dans le modèle MVC de l'application qui réécrit l'accès à la racine du site web correctement.

public partial class Default : Page
{
    public void Page_Load(object sender, System.EventArgs e)
    {
        HttpContext.Current.RewritePath(Request.ApplicationPath);
        IHttpHandler httpHandler = new MvcHttpHandler();
        httpHandler.ProcessRequest(HttpContext.Current);
    }
}

Si j'essaie d'accéder à un parcours au sein de l'application, tels que /Projet, j'obtiens le standard IIS page d'erreur 404, pas la .net page d'erreur.

J'ai essayé d'ajouter la ligne suivante de mon site Web.config httpHandlers section:

<add verb="*" path="*" validate="false" type="System.Web.Mvc.MvcHttpHandler, System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

Cela m'a donné une autre erreur .net page d'erreur 404.

J'ai ajouté ce qui suit à mon Global.asax, qui n'a rien fait:

protected void Application_BeginRequest(object sender, EventArgs e)
{
    if (Context.Request.FilePath.Equals("/"))
        Context.RewritePath("Default.aspx");
}

Je suis en utilisant le parcours suivant la configuration (utilise le repos de routage fourni par le MvcContrib projet):

routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
SimplyRestfulRouteHandler.BuildRoutes(routes);
routes.MapRoute(
"Default", 
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);

Toutes les suggestions sont les grealy reçu comme je l'ai épuisé toutes les options pour le moment j'ai droit maintenant.

Merci beaucoup.

OriginalL'auteur Tim Peel | 2008-11-09