Asp.net mvc 在ASP.NETMVC中,如何将对象列表传递给[HTTPPost]控制器参数?
我有另一种看法:Asp.net mvc 在ASP.NETMVC中,如何将对象列表传递给[HTTPPost]控制器参数?,asp.net-mvc,list,submit,http-post,asp.net-mvc-controller,Asp.net Mvc,List,Submit,Http Post,Asp.net Mvc Controller,我有另一种看法: @model IEnumerable<L5ERP.Model.BLL.BusinessObjects.MTR_MonthlyTransfer> @using (Html.BeginForm("ExpenseMonthlyTransferProcessing", "BudgetTransfer", Model.ToList())){ <table class ="divTable"> <tr> <th>Transferir&
@model IEnumerable<L5ERP.Model.BLL.BusinessObjects.MTR_MonthlyTransfer>
@using (Html.BeginForm("ExpenseMonthlyTransferProcessing", "BudgetTransfer", Model.ToList())){
<table class ="divTable">
<tr>
<th>Transferir</th>
<th>
Clave
</th>
<th>
Monto
</th>
</tr>
@foreach (var item in Model) {
<tr>
<td>
@Html.CheckBoxFor(x => item.MTR_Bool, new { @class = "checkMTR", @checked = "checked" })
</td>
<td>
@Html.TextBoxFor(x => item.MTR_Key, new {@class = "longInput" })
</td>
<td>
@String.Format("{0:F}", item.MTR_Amount)
</td>
</tr>
}
</table>
}
@model IEnumerable
@使用(Html.BeginForm(“ExpenseMonthlyTransferProcessing”,“BudgetTransfer”,Model.ToList())){
转移
克拉夫
蒙托
@foreach(模型中的var项目){
@CheckBoxFor(x=>item.MTR\u Bool,新的{@class=“checkMTR”,@checked=“checked”})
@TextBoxFor(x=>item.MTR_键,新的{@class=“longInput”})
@String.Format(“{0:F}”,item.MTR\u Amount)
}
}
我的控制器是这样的
[HttpPost]
public ActionResult ExpenseMonthlyTransferProcessing(List<MTR_MonthlyTransfer> lstMtr)
{ return View(lstMTR); }
[HttpPost]
公共行动结果费用月转移处理(列表lstMtr)
{返回视图(lstMTR);}
但是当我发布我的列表为空时,如何通过提交按钮发送我的列表 接收FormCollection并手动解析其中的项
使用F12检查导航器中的帖子,查看它是否发送了您期望的内容。您应该将
@model
更改为数组(L5ERP.model.BLL.BusinessObjects.MTR\u MonthlyTransfer[]
)或实现IList
)的其他内容:
@model L5ERP.model.BLL.BusinessObjects.MTR\u月转移[]
@对于(变量i=0;iModel[i].MTR\u Bool,新{@class=“checkMTR”,@checked=“checked”})
@TextBoxFor(x=>Model[i].MTR_键,新的{@class=“longInput”})
@String.Format(“{0:F}”,item.MTR\u Amount)
我用FOR代替了FOREACH来填充我的表,但是我在mi模型中使用了.ToList,现在我可以访问我集合的de indexs。下面是我的视图代码:Transferir Clave Monto@FOR(int I=0;I@model L5ERP.Model.BLL.BusinessObjects.MTR_MonthlyTransfer[]
@for (var i = 0; i < Model.Length; i ++) {
<tr>
<td>
@Html.CheckBoxFor(x => Model[i].MTR_Bool, new { @class = "checkMTR", @checked = "checked" })
</td>
<td>
@Html.TextBoxFor(x => Model[i].MTR_Key, new {@class = "longInput" })
</td>
<td>
@String.Format("{0:F}", item.MTR_Amount)
</td>
</tr>