MVC3 Razor ViewData
Habe ich ein online-Formular. zum Beispiel fragt er nach name und Vorname. Wenn Sie Einreichen, schicke ich Sie zu einer anderen Ansicht. diese zweite Ansicht hat noch ein paar weitere Textfelder (Passwort, E-Mail-Adresse, Benutzername) es hat auch vor-und Nachname wenn. Wenn Sie füllen die erste form, und füllen Sie Vorname/Nachname ich möchte im zweiten Formular angezeigt werden, diese Werte, da Sie schon eingetragen sind.
in der ersten Klasse ich bin dabei, alle die ausgefüllten Informationen in TempData["Eintrag"]
in der zweiten form, die ich Tue, diese zu überprüfen.
if (TempData["entry"] != null)
{
var _model = (AccountInformationModel)TempData["entry"];
ViewData["_firstName"] = _model.NameFirst;
ViewData["_lastName"] = _model.NameLast;
}
return View("Register");
ich denke, in meiner Sicht ich bin ein bisschen verwirrt, wie man die Anzeige dieser Daten in einem Textfeld. Ich habe dies in meiner Ansicht, aber es scheint nicht zu funktionieren.
<div class="editor-label">
@Html.LabelFor(m => m.FirstName)
</div>
<div class="editor-field">
@Html.TextBox("FirstName", ViewData["FirstName"])
@Html.ValidationMessageFor(m => m.FirstName)
</div>
klar die Linie, die sagt...
@Html.TextBox("FirstName", ViewData["FirstName"])
nicht funktioniert..
- Einfach nur neugierig, warum nicht, übergeben Sie eine Instanz des Modells mit den vor-und Nachnamen zu der zweiten Ansicht, und verwenden Sie dann
@Html.TextBoxFor(m => m.FirstName)
? - versuchte Ihren Vorschlag und es funktioniert perfekt..ich mag beide Ideen hier...aber deiner scheint zu nutzen, die Idee des mvc ziemlich gut...danke für die Anregung!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du bist Zuweisung des Wertes zu "_firstName"
Und dann zu versuchen, auf die Anzeige "FirstName"
Versuchen Sie es zu:
Den anderen Weg, dies zu tun, um Fehler zu vermeiden, wie dieses zu definieren eine neue Klasse, die enthält alle Ihre Daten anzeigen Tasten. Auf diese Weise werden Ihre strings enthalten sind, in einer Lage, die Wartung und änderungen zu erleichtern.
Dann, wenn Sie darauf zugreifen möchten, können Sie