Lazy Loading

sadece Entity Framework'e ait olmayan programlama jargonunda genel bir ifadedir. Birbiriyle parent-child ilişkisi bulunan yapılarda parent nesnesi çağırıldığında ilgili child verisinin de yüklenmesi anlamına gelir.

Entity Framework de Lazy Loading kavramını bu çerçevede şekillendirmiştir. Birbiriyle ilişkili nesnelerden birini query ile çağırdığımızda ilişkili olduğu nesneye ait veriler de otomatik olarak yüklenir. Örneğin personel tablosu departman tablosu ile ilişkilidir. Personel bilgisi çekilirken, personelin ilişkili olduğu departman bilgiside çekilir. Ancak bazı durumlarda personel nesnesinin departman verilerine ihtiyaç duymayız, yüklenmesine gerek yoktur. Örneğin bütün personel listesini gösterirken departmana ilgili bilgileri göstermek istemeyebilirim ancak personel detay bilgilerini gösterirken departmanıyla ilgili bilgileri göstermek isteyebilirim. Bu durumda nasıl devam etmeliyiz ?

  • Bunun yönetimi için Context sınıfı bize iki yapı sunar. Bunlar: LazyLoadingEnabled ve ProxyCreationEnabled özellikleri.

Aşağıdaki kod eklemesini, Context sınıfımız içerisine yazıyoruz. Bu işlemin ardından, ihtiyaç duyduğumuz sayfalarda durumu u true yaparak kullanabiliriz.

this.Configuration.LazyLoadingEnabled = false;

results matching ""

    No results matching ""