Entity framework 4.1 实体框架相当慢

Entity framework 4.1 实体框架相当慢,entity-framework-4.1,Entity Framework 4.1,我给出了一个简单的EF查询 return context.GlobalEntities .Where(ge => ge.IsActive == true) .ToList() 将其转换为以下SQL查询 SELECT [Extent1].[GlobalEntityId] AS [GlobalEntityId], [Extent1].[GlobalEntityName] AS [GlobalEntityName], [Extent1].[GlobalEntityAlias] AS

我给出了一个简单的EF查询

return context.GlobalEntities
.Where(ge => ge.IsActive == true)  
.ToList()
将其转换为以下SQL查询

SELECT 
[Extent1].[GlobalEntityId] AS [GlobalEntityId], 
[Extent1].[GlobalEntityName] AS [GlobalEntityName], 
[Extent1].[GlobalEntityAlias] AS [GlobalEntityAlias], 
[Extent1].[GlobalEntityTypeId] AS [GlobalEntityTypeId], 
[Extent1].[IsActive] AS [IsActive], 
[Extent1].[CreatedBy] AS [CreatedBy], 
[Extent1].[CreatedAt] AS [CreatedAt], 
[Extent1].[ChangedBy] AS [ChangedBy], 
[Extent1].[ChangedAt] AS [ChangedAt], 
[Extent1].[EmailAddress] AS [EmailAddress], 
[Extent1].[AverageActionTimeInHrs] AS [AverageActionTimeInHrs], 
[Extent1].[AverageCreationTimeInHrs] AS [AverageCreationTimeInHrs]
FROM [dbo].[GlobalEntity] AS [Extent1]
WHERE 1 = [Extent1].[IsActive]

当我执行上述代码时,执行需要45秒,而当我从SSMS执行相同的查询时,只需要1秒

你知道实体框架执行一个简单查询要花这么长时间吗。下面是SQL分析器所说的

SQL:BatchCompleted  SELECT 
[Extent1].[GlobalEntityId] AS [GlobalEntityId], 
[Extent1].[GlobalEntityName] AS [GlobalEntityName], 
[Extent1].[GlobalEntityAlias] AS [GlobalEntityAlias], 
[Extent1].[GlobalEntityTypeId] AS [GlobalEntityTypeId], 
[Extent1].[IsActive] AS [IsActive], 
[Extent1].[CreatedBy] AS [CreatedBy], 
[Extent1].[CreatedAt] AS [CreatedAt], 
[Extent1].[ChangedBy] AS [ChangedBy], 
[Extent1].[ChangedAt] AS [ChangedAt], 
[Extent1].[EmailAddress] AS [EmailAddress], 
[Extent1].[AverageActionTimeInHrs] AS [AverageActionTimeInHrs], 
[Extent1].[AverageCreationTimeInHrs] AS [AverageCreationTimeInHrs]
FROM [dbo].[GlobalEntity] AS [Extent1]
WHERE 1 = [Extent1].[IsActive]  

Application Name: EntityFramework   
NTUserName: user
CPU: 187    
Reads: 1357 
Writes: 0   
Duration: 45157 
ProcessID: 9520 
StartTime: 2012-07-06 10:38:40.797  
End TIme: 2012-07-06 10:39:25.953       

“当我从SSMS执行相同的查询时”您是指与生成的EF完全相同的查询(字面意思)吗?并且,您是否针对相同的数据集执行查询?在两个查询中返回相同的精确结果?您是否在多次连续执行时看到这种行为,而每次都不进行EF“预热”?