Wie kann ich eine 404-Seite in Form eines MVC-Views rendern lassen, wenn eine beliebige Url auf der Webseite nicht vorhanden ist? Auf der Webseite sind nebeneinander MVC und Webforms im Einsatz. Meine Idee war jetzt, in Application_Error zu checken, ob der Error 404 ist und dann irgendwie auf die MVC-ActionMethod zu verweisen. Wie geht das?
Ich bin mir nicht wirklich sicher, ob das eine Lösung für dich ist. Vielleicht habe ich die Frage auch anders verstanden. Als erstes kannst du eine (finale) Wildcard Routing-Regel setzen:
Jeder Aufruf, der keiner anderen Regel entspricht wird nun zu der Http404 Action gerouted. Dort musst du nun noch den Error Controller konfigurieren:
public ActionResult Http404(string url) { Response.StatusCode = 404; ViewData("url") = url; // Hier wurden die eckigen Klammern durch () ersetzt wegen dem BBCode return View(); }
Eine weitere Möglichkeit wäre, wenn du HandleUnknownAction innerhalb ds Controllers überschreibst. Ich hoffe das war so ungefähr annähernd etwas für dich...