我在我的视图中有一个项目数组,并试图迭代该数组并将每个项目传递给局部视图,但它会引发异常,我正在尝试将整个数组传递给部分视图,而不仅仅是单个项目。将模型中的项目传递给局部视图不工作ASP.NET MVC 5
我的主视图:
@model Product[]
@foreach (var item in Model)
{
@Html.Partial("_ProductDetail", item)
}
我的局部视图:
@model Product
<div>
@Model.Description
</div>
异常消息:
传递到词典中的模型项的类型为“产品[] ',但这本字典需要一个'产品'类型的模型项目。
我在做什么错?
编辑 控制器绝对传递一个数组,这里虽然代码:
public ActionResult Category(string id)
{
var model = FakeDb.Products;
return View(model);
}
而且FakeDb:
public static class FakeDb
{
public static Product[] Products { get; set; }
static FakeDb()
{
Products = new Product[2];
DateTime utcNow = DateTime.UtcNow;
ProductPic pp1 = new ProductPic { Filename = "71b.jpg", Default = true };
Product p1 = new Product { DateAdded = utcNow, Price = 395, Quantity = 1, Pics = new List<ProductPic> { pp1 }, Description = "5 ft. x 8 ft. Blue, Yellow" };
Products[0] = p1;
ProductPic pp2 = new ProductPic { Filename = "72b.jpg" };
Product p2 = new Product { DateAdded = utcNow.AddDays(-1), Quantity = 2, Pics = new List<ProductPic> { pp2 }, Description = "5 ft. x 8 ft. Blue, Green" };
}
}
嗨,你可以提供合格的模型视图控制器的代码?标记看起来很好。 –