【发布时间】:2014-02-26 13:43:22
【问题描述】:
我正在使用 MVC5 和 EF6 来开发应用程序。我将 SQL Server Express 用于数据库。我在数据库中有两个表/实体。
Vehicle - 包含有关车辆的信息
GsmDeviceLog - 包含从 GPS Tracker Fit 接收到的数据。
我的 GsmDeviceLogs 表目前有大约 20K 条记录,执行以下代码大约需要 90 秒。仅获取一条记录(即最后一条记录)。
代码如下:
var dlog = db.Vehicles.Find(2).GsmDeviceLogs.LastOrDefault();
当我尝试使用服务器资源管理器打开表时,它会在 5-10 秒内显示所有数据。谁能帮我在页面上快速加载详细信息。
感谢您阅读并关注该问题。 任何人都可以提出任何减少时间的方法。
【问题讨论】:
-
Find返回的是什么?IQueryable或IEnumerable? -
车辆类型的 DbSet。
-
我认为你的代码是从表中提取所有记录,然后在客户端,进行降序排序,给你第一行。运行该特定行后,您能否查看内存使用量是否显着增加?
标签: entity-framework model-view-controller