Wir versuchen langsam, von unseren klassischen asp-Seiten zu mvc-Ansichten zu migrieren, aber ich bin auf ein Problem gestoßen, das ich nicht herausfinden kann!Mischen von klassischem ASP mit MVC - Probleme mit den gleichen Pfaden
Wir wollen die gleiche URL-Struktur beibehalten, also hatte ich einen Controller/eine Aktion erstellt, um auf die gleiche URL zu verweisen, dies wird jedoch ignoriert und die ASP-Datei hat immer Priorität.
Beispiel:
ich die Ordnerstruktur habe: Erwachsene \ Policies \ index.asp und einen MVC-Controller namens Erwachsene mit einer genannten Aktion Policies
Wenn ich wechseln Sie zu dem url: ..co.uk \ adultes \ policies
Ich erwarte, dass der Browser zu meinem neuen Controller Aktion Meth gehen od aber es geht immer zum klassischen asp-Dateispeicherort.
Wenn ich versuche, index.asp zu etwas anderem umzubenennen, werde ich einen Erlaubnisfehler erhalten (so versucht es immer noch, den klassischen Asp-Pfad anstatt der MVC-Controller-Aktion die ganze Zeit zu verwenden).
Ich habe Stunden damit verbracht, mit dem Routing zu experimentieren, aber ich kann es nicht funktionieren. Es ist wichtig, dass wir dieselbe URL-Struktur beibehalten, damit ich meinem Controller/meiner Aktion keinen alternativen Namen geben kann.
Kann mir bitte jemand helfen?
Danke!
Edit:
Ich habe Art der Lage, dies mit einigen regex ein Rewrite-Modul zur Arbeit zu kommen, um dann das Wort „/ index“ am Ende angehängt, die dann an die mvc Ansicht gehen machen .
Ich weiß nicht, welche Muster Urls am Ende mit einer Erweiterung zu ignorieren zu verwenden, obwohl das heißt asp/jpeg usw., weil die URL in dreht /adults/policies/test.asp/index
Bisher habe ich dieses Muster eingefügt:
/? ([^:/\ S] +) ((\ w +) /)([\w-.]+[^#?\s]+ .?()) (# [\ w -] +) $
von hier genommen: http://www.regextester.com/20
kann jemand helfen damit dieses Umschreibe-Modul nicht eingreift, wenn am Ende eine URL mit einem * steht?
Ist Ihr Anwendungspool im integrierten Modus oder im klassischen Modus ausgeführt? – 3615
integrierter Modus – HDhani
Klingt, als ob es der Standardroute folgt, wie es sein sollte. Sie können die eingerichteten Routen anzeigen, indem Sie Ihre App_Start \ RouteConfig.cs-Datei anzeigen. Ich bin mir nicht sicher, ob es möglich ist, klassische Asp mit dem MVC-Framework zu mischen. Sie könnten versuchen, Routen für alle Ihre alten ASP-Seiten zu definieren und dann innerhalb der Aktion, die an Sie weitergeleitet wird, würden Sie diese ASP-Seite laden. Ich würde versuchen, 'return View (" classic/page.asp ");' aufzurufen und von dort aus zu gehen. Abhängig davon, wie diese Seiten eingerichtet sind, bin ich mir sicher, dass das nicht funktionieren wird. –