繁体   English   中英

ASP.Net MVC仪表板视图。 在哪里执行汇总

[英]ASP.Net MVC Dashboard View. Where to perform aggregations

我已经阅读了有关视图中仪表板设置的其他一些stackoverflow帖子,但是我仍然在挣扎。 我有一个主查询正在返回我的数据的详细视图,因为我只想打一次数据库。 因此,我有一个名为GetEmployeeInfo()的控制器操作,该操作返回IEnumerable<EmployeeBase>模型类。 我希望能够参加该课程并将其分解为一个视图中的不同div。 例如,我将在“按员工类别划分的汇总行数”视图上方有三个div,在显示明细表的botton上有两个div。 可以通过在整个视图中设置条件/聚合语句来严格通过一个视图来完成此操作,还是可以使用部分视图或其他视图。 还是使用一个控制器动作是一个问题?

谢谢。

我使用了Pat Burke的答案(请参阅我的问题下的评论。我也将其发布在下面)。 我为员工类别创建了一个基类和一个局部视图,这些视图具有我需要的所有属性。 我在细节部分也做了同样的事情。 然后,我创建了DashboardViewModel ,它具有3个IEnumerable<EmployeeCategoryBase>属性以及2个IEnumerable<EmployeeDetailInfo>属性。 然后,我创建了一个具有5个div的强类型DashboardViewModel视图,该视图使用@{Html.RenderPartial(ViewName,model.property);}

另一种选择是将仪表板视图强类型化为“ DashboardViewModel”之类的视图模型,该视图模型由不同的集合组成,这些集合对应于每个子部分所需的数据。 这还将把聚合逻辑放在服务器端而不是JS的客户端上。 您甚至可以包含局部视图,每个局部视图都对应于一个子部分以及您的视图模型中的数据集合。 最好将视图模型直接与视图所需的数据相关联

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM