【发布时间】:2020-04-26 15:50:49
【问题描述】:
我们有一个列表绑定到查看
@model List<DataModels.UseCase>
这个视图包含html表单
@using (Html.BeginForm())
{
for (int i = 0; i < Model.Count(); i++)
{
@Html.CheckBoxFor(m => Model[i].IsSelected)
//few other controls as
}
<input type="submit" value="Submit Selection" >
}
而在Controller中,POST方法如下所示
[HttpPost]
public ActionResult payment([Bind(Include = "Id,IsSelected// few other properties")] List<UseCase> useCases)
{
// Few business logic
return View();
}
请注意- 例如,我只在表单上显示了复选框控件,还有其他几个控件。
现在,在这种情况下,例如视图包含 10 条记录,但在 10 条中只有 2 条被选中,那么我们只需将 2 条选定的记录传递给 POST 方法,而不是全部 10 条。这是为了减少 POST 方法的过载。
我们能以任何方式实现这种类型的场景吗?
【问题讨论】:
标签: c# asp.net-mvc asp.net-mvc-4 asp.net-mvc-3