Ich habe die folgende Klasse Layout in MVC:MVC - Bearbeiten einer Liste von Objekten
public class ReportModel
{
List<SomeItem> items;
string value;
string anotherValue;
}
jetzt erstelle ich eine stark typisierte Ansicht in MVC dieser Art und machen editierbaren Textfeldern jeden Wert zu bearbeiten sowie Verwenden Sie eine foreach-Schleife, um Textfelder zu füllen, um die Elemente in der Liste eines Elements zu bearbeiten.
Wenn ich die Methode httppost übergebe, kommen die singulären Werte im reportmodel-Objekt wieder gut, aber die Liste wird im Objekt nicht zurückgegeben. Wie soll das gemacht werden?
Wenn ich sage, Httppost Ich beziehe mich auf die Methode, die MVC entsendet zurück
[HttpPost]
public ActionResult EditReport(ReportModel report)
{
// Save the report in here after the update on the UI side
}
Ansicht Code für die Buchung die Liste der someitem
if (Model.items != null && Model.items.Count > 0)
{
for (int i = 0; i < Model.items.Count; i++)
{
<div class="editrow">
<div class="edititem">
<div class="editor-label">
@Html.LabelFor(m => m.items.ElementAt(i).propertyOne)
</div>
<div class="editor-field">
@Html.TextBoxFor(m => m.items.ElementAt(i).propertyOne)
@Html.ValidationMessageFor(m => m.items.ElementAt(i).propertyOne)
</div>
</div>
<div class="edititem">
<div class="editor-label">
@Html.LabelFor(m => m.items.ElementAt(i).propertyTwo)
</div>
<div class="editor-field">
@Html.TextBoxFor(m => m.items.ElementAt(i).propertyTwo)
@Html.ValidationMessageFor(m => m.items.ElementAt(i).propertyTwo)
</div>
</div>
<div class="edititem">
<div class="editor-label">
@Html.LabelFor(m => m.items.ElementAt(i).propertyThree)
</div>
<div class="editor-field">
@Html.TextBoxFor(m => m.items.ElementAt(i).propertyThree)
@Html.ValidationMessageFor(m => m.items.ElementAt(i).propertyThree)
</div>
</div>
</div>
}
}
Zuerst: Nitpicking: Im Titel: Liste, nicht beleuchtet. Zweitens: Was ist die httppost-Methode, von der Sie sprechen? Sprechen wir Android hier? Fügen Sie dieses Tag hinzu, um es zu bezeichnen. – bldoron
Haben Sie das gelesen: http://www.hanselman.com/blog/ASPNETWireFormatForModelBindingToArraysListsCollectionsDictionaries.aspx –
@KirillBestemyanov Das ist nicht ganz das, was ich suche, da ich erwarte, sie im Berichtsmodell nicht als separate Parameter zu erhalten die Funktion – DMCApps