MVC的新手,如果快速谷歌会回答这个问题,请致以道歉,链接到解释此内容的文章或使用此示例的示例将不胜感激!
基本上,我有一个类别/子类别的产品列表,并希望能够输出每个子类别中的产品数量的列表,例如:
Computers
- Laptops (4)
- Tablets (9)
- Netbooks (3)
我正在使用EF Code First,我不确定如何最好地组织它。 我可以遍历我的产品列表并获得每个产品的计数,但这似乎效率低下。我还可以在每个子类别的模型中存储一个count变量,并在每次添加新产品时递增它。
基本上,我正在采用'最佳实践'方法来了解如何做到这一点,所以我可以从一开始就学会这样做。
答案 0 :(得分:3)
您可以让数据库执行查询:
var model = db
.Categories
.Select(c => new MyViewModel
{
Name = c.Name,
ProductsCount = c.Products.Count()
})
.ToList();
然后在视图中,您将在视图模型中显示名称和总产品数,这样当您显示列表时,您将能够显示此信息。