我正在使用 EF 6.0 并编写了这样的方法,
public IQueryable<TEntity> AllIncluding(params Expression<Func<TEntity, object>>[] includeProperties)
{
IQueryable<TEntity> query = GetQuery();
foreach (var includeProperty in includeProperties)
{
query = query.Include(includeProperty).AsNoTracking();
}
return query;
}
这里query.Include(includeProperty).AsNoTracking();
行需要很长时间才能执行,即使只有一个包含属性。有人能告诉我这是什么原因吗?
提前致谢。
更新:
GetQuery() 方法是这样的,
public IQueryable<TEntity> GetQuery<TEntity>() where TEntity:class
{
return this.DbContext.Set<TEntity>();
}