Mvc: route config, um Routen
ich habe eine route wie diese
routes.MapRoute(
name: "Default",
url: "{coutry}/{lang}/{controller}/{action}",
defaults: new { controller = "Home", action = "Index" }
);
nun im immer einige Probleme, wenn ich versuche zu nennen, die eine Methode aus einem controller, es funktioniert gut vor dem hinzufügen der neuen route
<a id="someId" class="link-button" href="../Documents/Create"><span>Create</span></a>
nun die einzige Art, wie ich erreichen kann, dass ist mit so etwas wie href="EN/us/Documents/Create"
gibt es eine Möglichkeit, für die Beibehaltung der benutzerdefinierten route für meine client-Seite, und immer noch halten die href="../Documents/Create">
Weg für meine admin-Seite, ist es, weil ich mehrere Funktionen in der admin-Seite entwickelt, aber jetzt habe ich gehört, dass die route für die client-Seite. Ich danke Ihnen so sehr.
Es meine Routen jetzt
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
routes.MapRoute(
name: "CustomRoute",
url: "{country}/{lang}/{controller}/{action}",
defaults: new { controller = "Test", action = "Index" }
);
aber ich kann nur den Zugang zu CustomRoute mit /ES/es/Test/Index ... warum nicht die default-Werte ?
InformationsquelleAutor Steve | 2013-04-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Brauchen Sie nur zu erklären, Ihre route nach die default-route:
Ich weiß, und das war meine erste Antwort, siehe mein edit, aber ein genauer Blick auf sein Beispiel, nicht der Fall.
Ich wirklich aprecciate Ihre Hilfe, bitte Lesen Sie meine Beiträge und sagen Sie mir, wenn Sie wissen, was passiert ...
Okay, um sicherzustellen, dass ich nicht geben Sie eine falsche Antwort, wenigstens etwas, das funktioniert, getestet habe ich meinen eigenen code. Also ich habe das route config die ich dir gegeben habe und diese:
<a id="someId" class="link-button" href="../Documents/Create"><span>Create</span></a> <a class="link-button" href="EN/us/someother/testmethod2"><span>Go to Method 2</span></a>
. Sowohl die Methode aufgerufen wurde. Also, was meinst du mitwhy is not taking default values
?Ok, du hast so Recht, was ich versuche zu sagen, u, die CustomRoute ist für mein index, und wenn ich versuche, Zugang mit
http://localhost:xxxx/Es/es/
bekomme ich 404-Fehler, es ist nicht SomeOther controller und die Index-action wie definieren wir in Verzug, kann ich nur get acces mithttp://localhost:xxxx/Es/es/SomeOther/Index
und ich brauche die Tannen Weg, bitte. Danke.InformationsquelleAutor von v.
Müssen Sie ersetzt die Standard-RouteConfig die neue Konfiguration an und es passt eine Url in diesem {Land}/{lang}/{controller}/{action} - format.
Wenn Sie möchten, akzeptieren Sie die
../Documents/Create
Url, die Sie hinzufügen müssen, um die Standard-RouteConfig am Ende.Auch im Anker-tag
<a id="someId" class="link-button" href="../Documents/Create"><span>Create</span></a>
statt hardcoding diehref
Sie können schreiben, wie die folgenden.<a id="someId" class="link-button" href="@Url.Action("Create","Documents")><span>Create</span></a>
Aktualisiert meine Antwort und bitte versuchen.
du hast Recht und ich habe versucht, Ihre Antwort, ich danke Ihnen so sehr, aber jetzt bin ich immer das problem, dass ich nur Zugang zu CustomRoute mit /ES/es/Test/Index, ist es für die home-Seite und ich brauche Zugang mit /Es/es nur, um einige Ideen ?
Was ist Ihr Standard -
Controller
undaction
Namen? Wo soll es umgeleitet werden, wenn eine Anfrage kommt mit/Es/es
Url?dies ist nun
routes.MapRoute( name: "CustomRoute", url: "{country}/{lang}/{controller}/{action}", defaults: new { controller = "Test", action = "Index" } );
mit dem Test controller und der Index-Aktion, aber ich bin noch immer 404-Fehler, wenn/Es/es Url
InformationsquelleAutor Saanch