Meine Einstellung:
- Haben Sie einen Blick für eine Route wie:
/Pages/Details/2
- Die Seitendetailansicht hat
<% Html.RenderAction("CreatePageComment", "Comments"); %>
um ein Kommentarformular zu erstellen - Das Kommentarformular sendet an
Comments/CreatePageComment
/Comments/CreatePageComment
gibt zurück.RedirectToAction
wenn ein Kommentar erfolgreich erstellt wurde- Das alles funktioniert gut
Meine Frage:
Wenn ein Überprüfungsfehler auftritt, wie soll ich dann zu /Pages/Detail/1
und den Fehler im Kommentarformular anzeigen?
- Wenn ich die
RedirectToAction
Es scheint, dass die Validierung schwierig ist; sollte ich sogar das Post-Redirect-Get-Muster für Validierungsfehler verwenden, anstatt einfach zurückzukehren? - Wenn ich zurückkehre
View()
wird wieder die Anzeige derCreateComment.aspx
Ansicht (mit Validierung, aber nur ein Formular auf einer weißen Seite), nicht die/Pages/Details/2
Route, die dieRenderAction
.
Wenn das PRG-Muster verwendet werden soll, dann muss ich wohl lernen, wie man die Validierung mit PRG durchführt. Wenn nicht - und das scheint mir besser durch die Rückgabe von View()
- dann weiß ich nicht, wie man den Benutzer zurück zu der ursprünglichen Ansicht zu bekommen, zeigt die Form Fehler, während mit RenderAction
.
Das fühlt sich an wie das Spiel, bei dem man gleichzeitig den Kopf antippt und den Bauch reibt. Darin war ich auch nicht gut. Ich bin neu bei MVC, also ist das wahrscheinlich das Problem hier.