2017-06-19 1 views
0

meine erste Action ist:wie Parameter zwischen den Controllern (in URL versteckt) passieren -mvc

return RedirectToAction("Index", "Authentication",new {code = result }); 

und ich verwende das "Ergebnis" Parameter in diffrent Controller. wie

es funktioniert gut, aber in URL, sehe ich den Code-Wert. (http://www.test.com/Authentication/code=123) Ich möchte Code-Wert nicht in URL

gesehen werden, wie kann ich es von URL verstecken? (neben der Verschlüsselung)

+0

Sie können nicht. Ihre Controller-Methode ist nicht psychisch. Wenn Sie den Wert nicht übergeben, kann der Controller ihn nicht empfangen. Sie können immer 'TempData' verwenden, aber das dauert nur eine Anfrage und wäre verloren, wenn der Benutzer den Browser aktualisiert hat. –

Antwort

1

Verwenden Sie Sitzungen, um Daten zwischen Controllern zu übertragen.

Session["valcode"] = code; 

aber zur Kenntnis, dass Sitzungen unter Verwendung von Daten zwischen den Controllern passieren ist eine schlechte Idee, weil es den app-Pool der Anwendung wird verwenden, die schließlich die Anwendung verlangsamen. Wenn Sitzungen verwendet werden müssen, vergewissern Sie sich, dass Sie Sitzungsvariablen nach der Verwendung löschen.

Hoffe, das hilft.

Verwandte Themen