MVC html.DropdownFor:绑定列表和选择



我正在使用模型状态检查。当出现错误时,我想要返回给用户与填写时相同的模型。然而,我的表单有html.DropDownListFor .

 @Html.DropDownListFor(x => x.Item.SelectedId, Model.ItemList)

下拉列表将错误地说,我的选择列表(Model.ItemList)是空的。这是因为dropDownListFor正确地绑定了所选值,但现在我的帖子操作列表为空。有没有默认的方法来解决这个问题。与列表本身被绑定和选定的值。

我知道我可以做一个html.HiddenFor并绑定整个列表,就像这样:

<input name="name[0].Id" type="text" />
<input name="name[1].Id" type="text" />
<input name="name[2].Id" type="text" />

或者我甚至可以写我自己的扩展来为我做这些。

现在在post action上,我只是重新填充选择列表,但我很好奇是否有另一种方法,因为我的搜索没有出现任何东西

似乎没有任何内置的功能可以帮助处理模型状态和选择列表。

因为这个链接也指向那个。http://benfoster.io/blog/automatic-modelstate-validation-in-aspnet-mvc

最新更新