public static IQueryable <TEntity> With <TEntity>(this IQueryable <TEntity> query, IEnumerable <Expression <Func <TEntity, Object> > > prefetch) where TEntity : class, IEntityCore { var creator = LinqUtils.GetElementCreator(query); var rootEdges = GetPathEdges(prefetch, creator, typeof(TEntity)).ToArray(); return(query.WithPath(rootEdges)); }