Sobes.tech
Middle

Include yükləməmi, tənbəlmi və ya açıqdırmı?

sobes.tech Süni İntellekt

AI-dan cavab

Entity Framework-də Include, İstəkli Yükləmə (Eager Loading) mexanizmidir.

İstəkli Yükləmə, əlaqəli varlıqların, ilk girişdə verilənlər bazasından bir və ya bir neçə sorğu ilə yüklənməsini təmin edir.

Onun istifadəsi, "N+1 sorğuları" problemini qarşısını alır; bu, tənbəl yükləmə zamanı baş verə bilər, hər əlaqəli varlığa daxil olmaq üçün ayrıca sorğu həyata keçirilir.

Sintaksis:

// Əlaqəli sifarişlərin müştərilərlə birlikdə yüklənməsi
var customersWithOrders = context.Customers.Include(c => c.Orders).ToList();

Digər yükləmə növləri ilə müqayisə:

Yükləmə növü Təsviri Nə zaman istifadə etmək lazımdır
İstəkli (Include) Əsas məlumatlarla birlikdə əlaqəli məlumatların bir və ya bir neçə sorğuda yüklənməsi. Əlaqəli məlumatlar demək olar ki, həmişə lazımdırsa.
Təbii (Lazy) Əlaqəli məlumatların yalnız ilk dəfə daxil olarkən yüklənməsi. Əlaqəli məlumatlar hər zaman lazım deyilsə.
Aydın (Explicit) Əsas varlıq əldə edildikdən sonra əlaqəli məlumatların əl ilə yüklənməsi. Əlaqəli məlumatlar müəyyən vaxtlarda lazım olarsa, əsas varlıq yükləndikdən sonra.