Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc MVC ModelBind列表框,带有多个选项_Asp.net Mvc_Model View Controller - Fatal编程技术网

Asp.net mvc MVC ModelBind列表框,带有多个选项

Asp.net mvc MVC ModelBind列表框,带有多个选项,asp.net-mvc,model-view-controller,Asp.net Mvc,Model View Controller,如何将列表框选择提交到ModelBinder <%=Html.Hidden("response.Index",index)%> <%=Html.ListBox("response[index].ChoiceID", new MultiSelectList(gc.choice,"ChoiceID","ChoiceText") )%> “gc.choice”是一个列表 我可以获取模型的第一个选定值,但不能获取第二个选定值,因为我无法更改索引

如何将列表框选择提交到ModelBinder

<%=Html.Hidden("response.Index",index)%>
<%=Html.ListBox("response[index].ChoiceID",
                new MultiSelectList(gc.choice,"ChoiceID","ChoiceText") )%>
“gc.choice”是一个列表


我可以获取模型的第一个选定值,但不能获取第二个选定值,因为我无法更改索引

我构建了一个演示模型SamplePresentationModel类,它有一个MultiSelect成员用户列表。 然后假设IEnumerable allUser是选项列表。 我用

将此选项传递给视图

然后在视图中,我可以构建列表框

   <label for="userList">users:</label>
    <%= Html.ListBox("usersList", Model.userList)%>
在POST action中,我可以捕获选择:

IEnumerable<int> selectedUserIDs = Request["usersList"].Split(new Char[] { ',' }).Select(idStr => int.Parse(idStr));

不知道这是否有用

我构建了一个演示模型SamplePresentationModel类,它有一个MultiSelect成员用户列表。 然后假设IEnumerable allUser是选项列表。 我用

将此选项传递给视图

然后在视图中,我可以构建列表框

   <label for="userList">users:</label>
    <%= Html.ListBox("usersList", Model.userList)%>
在POST action中,我可以捕获选择:

IEnumerable<int> selectedUserIDs = Request["usersList"].Split(new Char[] { ',' }).Select(idStr => int.Parse(idStr));

不知道这是否有用

我用稍微不同的方式解决了这个问题

[Model]
public IEnumerable<string> SelectedStores { get; set; }

[View]
<%= Html.ListBox("SelectedStores", 
    (MultiSelectList)ViewData["Stores"], 
    new { size = "8" }) %>

[Controller]
ViewData["Stores"] = 
    new MultiSelectList(StoreItems, "Value", "Text", model.SelectedStores);

因此,模型有一个IEnumberable,将填充用户选择。视图显示带有MultiSelectList的列表框,控制器在构建MultiSelectList时从模型中传入SelectedStores。

我以稍微不同的方式解决了这个问题

[Model]
public IEnumerable<string> SelectedStores { get; set; }

[View]
<%= Html.ListBox("SelectedStores", 
    (MultiSelectList)ViewData["Stores"], 
    new { size = "8" }) %>

[Controller]
ViewData["Stores"] = 
    new MultiSelectList(StoreItems, "Value", "Text", model.SelectedStores);
因此,模型有一个IEnumberable,将填充用户选择。视图显示带有MultiSelectList的列表框,控制器在构造MultiSelectList时从模型传入SelectedStores