Anzeige der gleichen Seite nach dem speichern
Möchte ich zeigen, eine form mit etwas Feld (in dem Beispiel), übermitteln, speichern und anzeigen der gleichen Seite mit einem reset aller Felder. Das probelm, wenn ich behaupte, ich gehe den "Speichern" - Aktion, aber wenn ich die Ansicht die form ist immer noch gefüllt.
Modell :
public class TestingModel
{
public string FirstName { get; set; }
}
Die Steuerung :
public class ChildController : Controller
{
public ActionResult Index()
{
TestingModel model = new TestingModel();
return View(model);
}
public ActionResult Save(TestingModel model)
{
Console.WriteLine(model.FirstName); //OK
//Save data to DB here ...
TestingModel testingModel = new TestingModel() { FirstName = string.Empty };
return View("Index", testingModel);
}
}
Der Ansicht :
@using (Html.BeginForm("Save", "Child",FormMethod.Post))
{
@Html.TextBoxFor( m => m.FirstName)
<input type="submit" id="btSave" />
}
Als Id-debug zu der Ansicht, in der "Immediat-Fenster" Model.FirstName = ""
aber, wenn die Seite zeigen, ich habe immer noch den Wert gepostet. Ich habe versucht, ein ReditrectionToAction("Index")
am Ende der Save
Methode, aber dasselbe Ergebnis.
Haben Sie eine Idee ?
Dank,
InformationsquelleAutor Kris-I | 2011-07-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie dies tun möchten, müssen Sie löschen alles, was in den ModelState. Ansonsten HTML-Helfer werden komplett ignoriert Ihr Modell und die Verwendung von Daten aus dem ModelState bei der Bindung Ihrer Werte.
Wie diese:
oder einfach redirect auf die Index
GET
Aktion im Falle des Erfolgs:das wird auf jeden Fall Arbeit im realen Projekt. Der ModelState hat die höchste Priorität der Provider der Werte für das Modell. Wenn Sie post-Modell für die erste Zeit, ModelState wird aufgefüllt mit Ihrer gebuchten Werte. Dann, egal, ob Sie liefern, die neue ( - ) Modells an, die Sie ansehen, oder liefern null-Wert, ModelState bereits Werte enthält, die von Ihr zuvor gepostet-Modell, und es füllt das neue Modell mit diesen Werten(höchste Priorität). So erhalten Sie die gleiche Modell-Werte in Ihrem Blick. Aber wenn Sie sich klar modelstate und übergeben Sie die new () - Modell-Ansicht, die Sie wirklich das neu geschätzte Modell.
InformationsquelleAutor Darin Dimitrov
Versuchen, wieder
Index
Ansicht ohne Modellhast du cache die Aussicht? oder kann dein browser tun
Nicht-browser-cache-Probleme, ich habe versucht, auf Firefox (mit Chrome im Allgemeinen) gleichen Ergebnis.
InformationsquelleAutor Amir Ismail
Sollten Sie veröffentlichen Sie Ihre form wieder den gleichen
ActionResult
Würden Sie in der Lage sein zu verwenden, der parameterlosen überladung für
BeginForm
zuInformationsquelleAutor simonlchilds