jueves, 5 de agosto de 2021

Carga diferida (Lazy Loading) en Entity Framework

Como sabemos la por defecto Entity Framework carga los datos relacionados con llaves al general una consulta; esto puede llevar mas tiempo de procesador y hace mas tardada.

Desactivándola  podremos cargar datos mas rápidamente.

public partial class DBEntities : DbContext

{

    public SchoolDBEntities(): base("name=DBEntities")

    {

        this.Configuration.LazyLoadingEnabled = false;

    }

 

    protected override void OnModelCreating(DbModelBuilder modelBuilder)

    {

    }

}

También se puede sobre cargar el método del constructor del contexto para activar y desactivarlo según lo necesitemos:

public partial class DBEntities : DbContext

{

    public SchoolDBEntities(): base("name=DBEntities")

    {

        this.Configuration.LazyLoadingEnabled = false;

    }

 

    public SchoolDBEntities(bool LazyLoadingEnabled): base("name=DBEntities")

    {

        this.Configuration.LazyLoadingEnabled = LazyLoadingEnabled;
    }

 

    protected override void OnModelCreating(DbModelBuilder modelBuilder)

    {

    }

}


No hay comentarios:

Publicar un comentario