我将Checkout
视图与我希望传递给Purchase
控制器的模型绑定
绑定到我的Purchase
视图。
在传递它的那一刻,该值为空。
我做错了什么?
结帐视图:
@model List<BasketModels.Product>
@using (Html.BeginForm("Purchased", "Basket", FormMethod.Post))
{
// problem here
<input type="submit" value="Purchase"/>
}
购买控制器:
[HttpPost]
public ActionResult Purchased(List<BasketModels.Product> products)
产品模式:
public class BasketModels
{
public class Product
{
public int ID { get; set; }
public string Name { get; set; }
public string Description { get; set; }
[DisplayFormat(DataFormatString = "{0:N}", ApplyFormatInEditMode = true)]
public decimal UnitPrice { get; set; }
public string ImageURL { get; set; }
[Display(Name = "Quantity")]
public int Quantity { get; set; }
public int Stock { get; set; }
[DisplayFormat(DataFormatString = "{0:N}", ApplyFormatInEditMode = true)]
public decimal Price { get; set; }
[DisplayFormat(DataFormatString = "{0:N}", ApplyFormatInEditMode = true)]
public decimal TotalPrice { get; set; }
}
}
答案 0 :(得分:0)
您可以使用@ Html.HiddenFor(x =&gt; x.modelPropery)快速而肮脏的路线。这是对你的DisplayFor的补充。
答案 1 :(得分:0)
我使用以下方法对其进行了测试,但它确实有效。
结帐视图
@model ProjectName.Models.BasketModels.Product
@using (Html.BeginForm("Purchased", "Basket", FormMethod.Post))
{
@Html.TextBoxFor(m=>m.Description)
<input type="submit" value="Purchase"/>
}
购买控制器
[HttpPost]
public ActionResult Purchased(BasketModels.Product products)
{
return View();
}
我意识到您可能仍希望将其绑定为列表。在那种情况下,我一直试图想办法如何做几天,我没有解决方案。 List<string>
有效。 List<model>
没有。