In asp.net mvc verwende ich diesen Code:
RedirectToAction("myActionName");
Ich möchte einige Werte über den Querystring übergeben. Wie mache ich das?
c#
asp.net-mvc
url-redirection
mrblah
quelle
quelle
Erwägen Sie auch die Verwendung von T4MVC mit den Erweiterungsmethoden
AddRouteValue()
undAddRouteValues()
(wie in dieser Frage zum Festlegen der Abfragezeichenfolge in redirecttoaction zu sehen ).quelle
Für Leute wie mich, die die aktuellen Querystring-Werte zur RedirectToAction hinzufügen möchten, ist dies die Lösung:
var routeValuesDictionary = new RouteValueDictionary(); Request.QueryString.AllKeys.ForEach(key => routeValuesDictionary.Add(key, Request.QueryString[key])); routeValuesDictionary.Add("AnotherFixedParm", "true"); RedirectToAction("ActionName", "Controller", routeValuesDictionary);
Wie Sie sehen, besteht die Lösung darin, das RouteValueDictionary- Objekt zu verwenden
quelle
Machen Sie nicht den gleichen Fehler, den ich gemacht habe. Ich habe 404-Fehler behandelt und wollte mit
404=filename
in den Querystring umleiten, dhmysite.com?404=nonExistentFile.txt
.QueryString-Schlüssel können nicht mit Zahlen beginnen. Wechsel von
404
zuFileNotFound
löste mein Problem, dhmysite.com?FileNotFound=nonExistentFile.txt
.quelle
HttpContext.Request.QueryString["404"]
.