0

我将我的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; }
        }
}
4

2 回答 2

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>才不是。

于 2013-02-28T20:43:36.953 回答
0

您可以使用 @Html.HiddenFor(x=>x.modelPropery) 快速而肮脏的路线。这是对您的 DisplayFor 的补充。

于 2013-02-22T12:03:55.513 回答