我的SQL Server CE数据库首次运行查询存在很大问题。
我已经应用了此优化Performance and the Entity Framework,但仍然是第一次查询需要15 sec
才能运行。
当我第一次运行我的应用程序第一次查询时,我注意到的东西大约需要15秒才能运行。
如果我关闭我的应用程序并再次运行,则第一个查询会立即运行。因此,如果我重新启动PC并再次运行应用程序,则首先查询需要15秒才能运行。
总的来说,经过两周的互联网研究,我找不到解决问题的好方法。我使用了ANTS Performance Profiler,我注意到我的第一个查询大约需要11秒,每个页面的初始化时间为4秒。
我有一些问题:
也许15秒是好的,但是当我从DVD运行我的应用程序时,需要45秒才能运行第一次查询。
被修改
我为我的应用程序的每个部分使用了多个数据库。
例如此查询第一次运行表单需要11秒:
public void GetContent(short SubjectID)
{
new QuranOtherEntities(CDataBase.CSQuranOtherEntities))
{
CHtmlDesign.HtmlFile = QODB.AdabTbls.First(data => data.ID == SubjectID).Content;
}
}
表格结构
答案 0 :(得分:1)
首先(data => data.ID == SubjectID)
好的,忘记实体框架。获取生成的SQL代码,通过分析器运行它。
这个SMELLS就像“我不知道索引是什么”。选中“Use-the-index-luke.com”。
同时确保
也许15秒是好的,但是当我从DVD运行我的应用程序时,需要45秒才能先运行 查询
实际上是sql语句。它可以很容易地加载和初始化您的应用程序,在这种情况下,您在这里提出一个完全不相关的问题。在这种情况下,你可以做很多事情 - 仍然有优化等等,但你必须在这里提出具体问题,即做你的功课,这里的这个问题完全无关紧要。这包括,btw,实体框架初始化所需的时间 - 这与查询本身无关,但可能发生在您运行的第一个查询上。