我的问题是列表变量,当我将变量添加到列表中时,变量在HttpGet中正确添加到列表中,当我在HttpPost中传递相同的变量时,变量没有传递,为什么变量没有传递给HttpPost,请帮我解决这个问题,我在下面给出我的代码,请检查。
List<tbl_Basket2> basket2 = new List<tbl_Basket2>();
[HttpPost]
public ActionResult Basket(tbl_Basket2 basket2)
{
int qty=basket.int_Qty ;
return View(basket2);
}
view page,
foreach (var item in Model)
{
@Html.DisplayFor(m => item.dec_Price)
@Html.EditorFor(m => item.int_Qty)
@Html.DisplayFor(m => item.TotalPrice)
}
答案 0 :(得分:0)
在控制器中: -
public ActionResult Basket(tbl_Basket2 basket2)
更改为:
public ActionResult Basket(List<tbl_Basket2> basket2)
将视图模型更改为使用@model List<tbl_Basket2>
而不是Ienumerable作为模型。
更改视图以使用for - next循环: -
@using (Html.BeginForm())
{
for (var i = 0; i < Model.Count(); i++)
{
@Html.DisplayFor(m => item[i].dec_Price)
@Html.EditorFor(m => item[i].int_Qty)
@Html.DisplayFor(m => item[i].TotalPrice)
}
}
这应该与MVC deserialiser模型绑定器很好地配合。