【问题标题】:Keeping count of items in a category保持类别中的项目计数
【发布时间】:2013-02-17 10:05:15
【问题描述】:

对于 MVC 的新手,如果快速谷歌能够回答这个问题,我们深表歉意,我们将不胜感激链接到解释这个的文章或使用它的示例!

基本上,我有一个类别/子类别中的产品列表,并且希望能够输出它们的列表以及每个子类别中的产品数量,例如:

Computers
 - Laptops  (4)
 - Tablets  (9)
 - Netbooks (3)

我使用的是 EF Code First,但我不确定如何最好地组织它。 我可以遍历我的产品列表并计算每个产品的数量,但这似乎效率低下。我还可以在模型中为每个子类别存储一个计数变量,并在每次添加新产品时递增。

基本上,我正在寻求一种“最佳实践”方法来了解如何做到这一点,因此我可以从一开始就学会做到这一点。

【问题讨论】:

    标签: c# .net asp.net-mvc-3 entity-framework


    【解决方案1】:

    您可以让数据库执行查询:

    var model = db
        .Categories
        .Select(c => new MyViewModel
        {
            Name = c.Name,
            ProductsCount = c.Products.Count()
        })
        .ToList();
    

    然后在您的视图中,您将在视图模型中获得名称和产品总数,以便在显示列表时可以显示此信息。

    【讨论】:

    • 是的,这正是我在传统 Web 表单项目中会做的事情(嗯,在数据库中使用 sProc 而不是 linq),但不确定如何创建它。谢谢!
    猜你喜欢
    • 2013-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-09
    • 2017-08-10
    • 1970-01-01
    • 2020-09-16
    相关资源
    最近更新 更多