ASP.NET MVC下拉详细视图包括“全部”

时间:2018-08-03 12:51:18

标签: asp.net model-view-controller entity

我是ASP.net MVC的新手。

我要修改的网站有一个名为“站点”的下拉列表,用户可以更改站点,然后将相应显示该站点的销售行。

现在我的客户希望“站点”下拉列表包含“所有站点”,因此,当选择“所有站点”时,将显示所有站点的所有销售。

有人可以给我指导我应该做什么吗? 我是否应该更改表映射以使每次销售都始终指向实际站点和称为“所有站点”的虚拟站点?

谢谢 B

2 个答案:

答案 0 :(得分:0)

我认为,没有正确的方法可以做到这一点。但这对我来说似乎是“报告”。用户实际上是在选择过滤器。

您不应该更改表格,可以在C#上汇总或创建视图

答案 1 :(得分:0)

您可以使用带有可选参数的函数,这将有助于我们决定是否必须显示所有网站的销售还是仅显示所选网站的销售。

该函数将如下所示:

public IEnumerable<Sale> GetSales(int? id)
    {
        if (id != null)
        {
            var salesBySite = getSalesBySite((int)id);
            return salesBySite;
        }
        else
        {
            var salesOfAllSites = getAllSales();
            return salesOfAllSites ;
        }

    }

在下拉列表中,所有选项均应具有值作为相应站点的ID,但选项“ AllSites”不应具有值或为空值。

当用户从下拉列表中选择任何站点时,id将被传递给功能GetSales。如果用户从下拉列表中选择AllSites,则不会将任何ID传递给函数,函数将返回所有站点的销售额。