Mein Setup:Soll RenderAction mit Formularen verwendet werden?
- haben einen Blick für eine Strecke wie:
/Pages/Details/2
- Die Seite Details zu sehen
<% Html.RenderAction("CreatePageComment", "Comments"); %>
Kommentar Formular - Kommentarformular Beiträge zu
Comments/CreatePageComment
/Comments/CreatePageComment
kehrt zu machen hatRedirectToAction
Wenn ein Kommentar erfolgreich erstellt wurde- Das funktioniert alles gut
Meine Frage:
Wenn es einen Fehler bei der Überprüfung ist, wie soll ich zu /Pages/Detail/1
zurückzukehren und den Fehler in der Kommentarfunktion zeigen?
RedirectToAction
verwende, scheint es Validierung ist schwierig; Soll ich das Post-Redirect-Get-Muster für Validierungsfehler verwenden, anstatt es einfach zurückzugeben?View()
zurückkehren es schlägt mich zurück CreateComment.aspx
Ansicht zeigt (mit Validierung, sondern nur ein Formular auf einer weißen Seite), nicht die /Pages/Details/2
Route, die die RenderAction
genannt.Wenn das PRG-Muster verwendet werden soll, dann denke ich, ich muss nur lernen, wie Validierung während der Verwendung von PRG zu tun. Wenn nicht — und mir scheint dies besser behandelt durch die Rückkehr View()
— dann weiß ich nicht, wie man den Benutzer in die ursprüngliche Ansicht zurück, zeigt die Formularfehler, während RenderAction
.
Das fühlt sich an wie das Spiel, bei dem man sich den Kopf klopft und gleichzeitig den Bauch reibend. Ich war auch nicht gut darin. Ich bin neu bei MVC, das ist wahrscheinlich das Problem hier.
BTW: Ich könnte dies nur durch eine partielle und eine POST-Route/Seite/CreateComment geschehen lassen, aber scheint das nicht chaotisch? Ich möchte, dass mein Kommentar-Controller Kommentare verarbeitet, nicht den Page-Controller. Seltsamerweise habe ich gerade den Oxite-Blog-Engine-Code überprüft, und ihr Post-Controller übernimmt das Hinzufügen von Kommentaren; Ihr Comments-Controller hat nicht einmal eine Create-Aktion! –