将模型从视图传递到控制器的问题
问题描述:
我将我的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; }
}
}
答
您可以使用@ Html.HiddenFor(X => x.modelPropery)快速和肮脏的路线。这是对你的DisplayFor的一个补充。
+0
这行不是问题,它的提交按钮在底部 – Neeta 2013-02-22 15:10:02
答
我使用以下测试它,它的工作原理。
查看查看
@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>
没有。
你可以简化你的提交按钮,只是''看看你如何继续?你不应该需要所有的JS重定向的东西在那里 – Vaze 2013-02-21 17:11:25
它仍然为空 – Neeta 2013-02-22 08:34:20
我不认为使用DisplayFor将填充您的模型 – CrazyCoderz 2013-02-22 11:59:09