que sé sobre el método discutido aquí:Compiled LINQ query & DataLoadOptions ... ¡con un giro!
Solving common problems with Compiled Queries in Linq to Sql for high demand ASP.NET websites
... pero esto no funciona para mi situación como llegue a:
"Configuración de las opciones de carga no está permitido después de los resultados tienen sido devuelto de una consulta ".
estoy usando guiones CodeSmith PLINQO para generar entidades y código del gestor y el código del gestor ve algo como esto:
public partial class SearchManager
{
#region Query
// A private class for lazy loading static compiled queries.
private static partial class Query
{
internal static readonly Func<MyDataContext,IOrderedQueryable<Search>>
GetAll = CompiledQuery.Compile(
(MyDataContext db) =>
from s in db.Search
orderby s.Name
select s);
}
#endregion
public IQueryable<Search> GetAll()
{
return Query.GetAll(Context);
}
}
primero intenté dejar caer DataLoadOptions estáticos en la clase Searchmanager así:
public static readonly DataLoadOptions MyOptions =
(new Func<DataLoadOptions>(() =>
{
var option = new DataLoadOptions();
option.LoadWith<Search>(x => x.Rule);
return option;
}))();
... entonces proporcionar al contexto en el método GetAll como:
public IQueryable<Search> GetAll()
{
Context.LoadOptions = MyOptions;
return Query.GetAll(Context);
}
... y eso me dio el error que anoté anteriormente. ¿Esto se debe a que la consulta ya está compilada y, por lo tanto, no puede agregarse DataLoadOptions "adicionales"? De ser así, ¿cómo sería posible aplicar DataLoadOptions antes de la consulta que se está compilando?
verificación de la respuesta publicado y hacer aceptarlo si recibiera la información que desee –