2014-01-06 106 views
1

我有一个问题,我解决不了,LINQ非常缓慢使得.toList()

我做一个简单的查询在LINQ时:

List<MOV> mvs = (from x in new MyAppDataContextSingleton().DataContext.MOV 
            where x.dateMOV.GetValueOrDefault(x.dateCriation).Date >= initialDate.Date && x.dateMOV.GetValueOrDefault(x.dateCriation).Date <= finalDATE.Date 
            orderby x.dateMOV 
            select x).ToList(); 

执行这个查询直接SQL非常快,它只返回约20个结果! 当我在使用LINQ的项目上执行此查询时,会花费20秒以上的时间非常缓慢:\但此问题仅在对此表执行查询时发生。想知道发生了什么?我该如何解决它?

最好的问候, 安德烈

+2

什么是您的MOV对象是什么样子?你检查过这个linq查询产生的实际SQL吗? – Geoff

+1

我会检查并看看有多少时间GetValueOrDefault正在使用,因为它被称为MOV中的每个项目两次MOV – PhillyNJ

+0

杰夫,是的,如果我在管理工作室运行生成的SQL它运行速度快.. –

回答