为什么EF在第一次调用方法时需要很长时间
本文关键字:长时间 方法 EF 第一次 调用 为什么 | 更新日期: 2023-09-27 18:03:13
我正在web上的应用程序工作,我正在使用ef来创建模型和访问数据库。
-
创建会话变量用于会话级别:
private Model.WebsiteModelContainer s_defaultModel; public Model.WebsiteModelContainer DefaultModel { get { s_defaultModel = HttpContext.Current.Session["DefaultModel"] as WebsiteModelContainer; if (s_defaultModel == null) { s_defaultModel = new Model.WebsiteModelContainer(); HttpContext.Current.Session["DefaultModel"] = s_defaultModel; } return s_defaultModel; } }
-
使用DefaultModel代码:
DefaultModel.Ages返回。order (c => c. agename).ToList();
在项目的新构建之后,执行的第一个数据库查询导致EF构建用于数据访问的视图。这可能会导致严重的延迟。您可以通过让EF预编译视图来解决这个问题。参见如何:从MSDN预生成视图以提高查询性能。