【发布时间】:2010-03-29 15:53:36
【问题描述】:
我正在使用 MVC (C#) 和实体框架。我有一个 sql server 数据库,其中包含名为 Profile、Gallery、ArtWork 的表:
简介: 用户名, 名, 等等……
画廊: 图库ID, 用户名, 画廊名称,
艺术品: 图像指南, 画廊 ID, 描述, 发布日期, 意见, 下载,
我的表之间有如下关系:
Profile->Gallery->ArtWork(上面加粗的外键)
我想知道的是为统计页面获取以下内容的最有效方法:
本月下载量排名前 10 的艺术作品
本月下载次数最多的设计师。
为上述内容构建 LinQ 很容易,但我不想在每次用户查看统计页面时都访问数据库。可能有 30,000 多名设计师每个人都有 5000 多位艺术作品,我不希望每次有人点击统计页面时都计算这些结果。我只想每天访问数据库以获取 stat 1,每月访问 stat 2。
我是最好为数据库中的每个统计数据使用一个视图并一直访问它,还是最好设置一个计时器以每天和每月访问数据库(如果是这样,请问如何?),还是有更好的方式。
提前致谢
【问题讨论】:
标签: c# sql-server asp.net-mvc linq entity-framework