【发布时间】:2012-05-29 11:55:56
【问题描述】:
我试图为我创建的模块获取一个列表框。选择器有效(可选实体的标题出现,但没有数据返回到控制器中的 Post 函数。
我不知道您需要什么才能帮助我,但这里至少是 html 代码。
HTML 代码:
<div class="field required">
@Html.LabelFor(model => model.Sessions)
@Html.ListBox("Sessions", new SelectList(Model.Sessions, "Id", "Title", 1));
@Html.ValidationMessageFor(model => model.Sessions)
</div>
【问题讨论】:
-
它不是
ListBoxFor,因此它没有将值绑定到POST上的任何属性。如果是SelectList,则将其绑定到int,类似于@Html.DropDownListFor(model => model.SessionId, new SelectList(Model.Sessions, "Id", "Title", 1)),在您的模型中,SessionId 将是一个 int 属性 - 列表中选定项目的索引。 -
感谢您的回答,我将其更改为:@Html.ListBoxFor(model => model.Id, new SelectList(Model.Sessions, "Id", "Title", "1") ) 但我仍然对控制器无效。模块“会话”不包含整数 ID 属性,但我尝试使用 SessionViewModel,但它也不起作用。有任何想法吗 ?我可以用更简单的方式做到这一点吗?
标签: c# html model-view-controller listbox html-helper