formcollection enthält nur die html ausgewählt.listbox-Elemente Werte? MVC

Mein Szenario ist Folgendes: ich habe zwei listbox ist, eine, die enthält alle meine Datenbank-Objekte, und leere. Der Benutzer fügt die benötigten Gegenstände aus dem full-Listenfeld, um die leere listbox.

Bin ich über ein Formular Einreichen, alle die Elemente, die der Benutzer Hinzugefügt hat.

Das problem ist, dass nur die ausgewählten Elemente aus der listbox eingereicht werden. Also, wenn der Benutzer hebt einige der Elemente, Sie werden nicht in der vorgelegten form. Meine Ansicht sieht so aus:

<% using (Html.BeginForm("MyAction", "MyController"))
   { %>

    <%= Html.ListBox("AddedItems", Model.Items)%>

    <input type="submit" value="Submit" name="SubmitButton"/>
<% } %>

Mein Controller sieht so aus:

public ActionResult MyAction(FormCollection formCollection)
{
    var addedItems = formCollection["AddedItems"].Split(',');

    //....more code that does stuff with the items
}

Werde ich über alles, was der falsche Weg ist? Gibt es eine bessere Art und Weise zu unterbreiten, die Gegenstände? Was würden Sie tun?

InformationsquelleAutor Darcy | 2010-03-04

Schreibe einen Kommentar