MVC 4 fangen alle Route nie erreicht

Beim Versuch, in MVC 4 eine Catch-All-Route zu erstellen (etwas, für das ich mehrere Beispiele gefunden habe und auf dem mein Code basiert), wird ein 404-Fehler zurückgegeben. Ich führe dies auf IIS 7.5 aus. Dies scheint eine einfache Lösung zu sein. Was vermisse ich?

Ein Hinweis, wenn ich die "CatchAll" -Route über die "Default" -Route verschiebe, funktioniert es. Aber dann wird natürlich keiner der anderen Controller jemals erreicht.

Hier ist der Code:

Route.Config:

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
        );

        routes.MapRoute(
            "CatchAll",
            "{*dynamicRoute}",
            new { controller = "CatchAll", action = "ChoosePage" }
        );

Regler:

public class CatchAllController : Controller
{

    public ActionResult ChoosePage(string dynamicRoute)
    {
        ViewBag.Path = dynamicRoute;
        return View();
    }

}

Antworten auf die Frage(3)

Ihre Antwort auf die Frage