私のシナリオは次のとおりです。2つのリストボックスがあります。1つはすべてのデータベースアイテムを含み、もう1つは空です。ユーザーは、必要なアイテムを完全なリストボックスから空のリストボックスに追加します。
フォームを使用して、ユーザーが追加したすべてのアイテムを送信しています。
問題は、リストボックスから選択されたアイテムのみが送信されることです。したがって、ユーザーが一部のアイテムの選択を解除した場合、それらはフォームに送信されません。私の見解は次のようになります。
<% using (Html.BeginForm("MyAction", "MyController"))
{ %>
<%= Html.ListBox("AddedItems", Model.Items)%>
<input type="submit" value="Submit" name="SubmitButton"/>
<% } %>
私のコントローラーは次のようになります。
public ActionResult MyAction(FormCollection formCollection)
{
var addedItems = formCollection["AddedItems"].Split(',');
//....more code that does stuff with the items
}
私はすべてを間違った方法で行っていますか?アイテムを提出するより良い方法はありますか?あなたならどうしますか?