繁体   English   中英

ADO.NET实体框架模型性能

[英]ADO.NET Entity framework model Performance

我在同一主题上也看到了类似的问题,但无法解决我的问题。

我有带DB2后端的asp.net Web应用程序。 我们有实体框架模型3.5,因此,当我第一次加载页面时,执行第一个查询大约需要15秒。 而且查询非常简单,可以从一个表中选择一行并为where子句建立索引。 这是查询

 protected Detail getProgramDetail(string id1,string id2, string id3)
 {
     Detail result = (from d in context.Detail
            where d.id1.equals(id1) &&
            d.id2.equals(id2) &&
            d.id3.equals(id3)
            select d).FirstorDefault();
     return result;

  }

我也尝试更新统计信息,但是它也没有帮助。 在阅读了其他性能调优文章之后,我将该查询作为已编译的查询进行了查询,但仍然需要15秒钟。 但是随后的调用以毫秒为单位非常快。 我认为建立连接并运行查询需要花费一些时间。

有没有办法改善初始性能? 我试图生成视图。 但是我收到以下错误。 不确定如何处理此问题。

在配置中找不到指定的存储提供程序,或者该存储提供程序无效

我的连接字符串在machine.config中。

提前致谢。 斯里维迪亚

有没有办法改善初始性能?

那不是ASp.NET/Entity Framework,而是IIS-启动应用程序,包括进行所需的编译;)?

使其热-有一个扩展名可以在IIS启动时调用页面,因此应用程序是热的(已编译,已加载到内存中)。

http://weblogs.asp.net/scottgu/archive/2009/09/15/auto-start-asp-net-applications-vs-2010-and-net-4-0-series.aspx

您期待有多种选择来解决此问题

1)使用Entity框架添加第二级缓存。本文非常有帮助http://msdn.microsoft.com/hi-in/magazine/hh394143(zh-cn).aspx

2)查询和ORM不能很好地结合在一起,可以使用存储过程和Datareader来肯定会优化性能。

3)如果您可以在代码中使用“优化第一个或默认设置”

暂无
暂无

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

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