Cybersilent
چهارشنبه 22 مهر 1394, 11:26 صبح
سلام.
توی یک پروژه MVC که برای لایه دسترسی به داده، الگوی واحد کار Uow پیاده سازی شده، وقتی که یک کوئری به شکل زیر زده می شود، EF به صورت پیش فرض تمام entity های مرتبط رو هم بارگزاری می کنه!
var t = db.UserRoleTemplates.ToList();
تعریف کلاس به شکل زیر هست:
public class UserRoleTemplate
{
public int Id { get; set; }
public int RoleTemplateId { get; set; }
public virtual RoleTemplate RoleTemplate { get; set; }
public int UserId { get; set; }
public virtual User User { get; set; }
}
تنظیمات فعال کردن Lazy Loading هم به صورت دستی فعال شده است:
public MyDataContext()
: base("MyContext")
{
this.Configuration.LazyLoadingEnabled = true;
}
با این شرایط من توقع دارم تا وقتی که متد Include به کار نرفته است مثلا User مرتبط با رکورد جاری را بارگزاری نکند اما اینطور نمی شود و تمام آبجکت های وابسته را تا آخر بارگزاری می کند!
ممنون می شوم کسی راهنمایی کند.
توی یک پروژه MVC که برای لایه دسترسی به داده، الگوی واحد کار Uow پیاده سازی شده، وقتی که یک کوئری به شکل زیر زده می شود، EF به صورت پیش فرض تمام entity های مرتبط رو هم بارگزاری می کنه!
var t = db.UserRoleTemplates.ToList();
تعریف کلاس به شکل زیر هست:
public class UserRoleTemplate
{
public int Id { get; set; }
public int RoleTemplateId { get; set; }
public virtual RoleTemplate RoleTemplate { get; set; }
public int UserId { get; set; }
public virtual User User { get; set; }
}
تنظیمات فعال کردن Lazy Loading هم به صورت دستی فعال شده است:
public MyDataContext()
: base("MyContext")
{
this.Configuration.LazyLoadingEnabled = true;
}
با این شرایط من توقع دارم تا وقتی که متد Include به کار نرفته است مثلا User مرتبط با رکورد جاری را بارگزاری نکند اما اینطور نمی شود و تمام آبجکت های وابسته را تا آخر بارگزاری می کند!
ممنون می شوم کسی راهنمایی کند.