【发布时间】:2020-05-31 23:29:32
【问题描述】:
编辑:产品视图包含一些产品,所以我尝试使用每个产品的按钮将它们逐个添加到购物车中,添加的产品应显示在部分的表格中查看(购物车)工作正常,我现在正在尝试在弹出模式中呈现这个购物车,所以当我按下弹出按钮时,它应该显示我添加的产品,当我还在里面时产品视图。
我正在尝试在模态体内做这样的事情:
@Html.Partial("_ShowCart", new List<InternetApp.Models.Cart>())
但这会检索一个空列表。
所以我想要这样的东西,但我不知道如何用不同的模型做到这一点:
@Html.Partial("_ShowCart", Model)
我有 3 个模型:产品、购物车和视图模型:
public class Product
{
public int id { get; set; }
public String name { get; set; }
public float price { get; set; }
public String image { get; set; }
public String description { get; set; }
public int? CategoryId { get; set; }
}
public class Cart
{
public int product_id { get; set; }
public DateTime added_at { get; set; }
public virtual Product product { get; set; }
}
public class ProductCart
{
public Product Product { get; set; }
public Cart Cart { get; set; }
}
购物车和产品每个都有控制器,我将购物车作为部分视图,采用IEnumerable<Cart> 和产品视图,采用IEnumerable<Product>。
这是购物车索引操作
public ActionResult Index()
{
List<Cart> Cart = db.Cart.Include(a => a.product).ToList();
return PartialView("_ShowCart", Cart);
}
我不知道如何在产品内部渲染购物车,因为每个都有不同的IEnumerable 模型...
【问题讨论】:
-
您应该将数据映射到视图模型,然后将视图模型绑定到视图。您能否准确解释您要在视图中显示的内容?如果可能,请提供您目前正在尝试的内容。
-
@StephenRaman 好的,我编辑了它,请再检查一次,当我在两个视图中循环浏览它们以列出产品时,我怎么能使用视图模型?
标签: asp.net-mvc asp.net-mvc-4 partial-views asp.net-mvc-partialview