Junior — Middle
ORM-də əlaqələrlə işləyərkən include və theninclude metodları arasındakı fərq nədir?
sobes.tech Süni İntellekt
AI-dan cavab
ORM-də (məsələn, Entity Framework) Include metodu birinci səviyyəli əlaqəli varlıqları ehtiyatla yükləmək üçün istifadə olunur. Yəni, əsas varlıq ilə birlikdə naviqasiya xüsusiyyətinə aid əlaqəli məlumatların yüklənməsinə imkan verir.
ThenInclude ikinci və daha yüksək səviyyəli əlaqəli varlıqları yükləmək üçün tətbiq olunur, yəni Include sonrası iç-içə naviqasiya xüsusiyyətləri üçün.
Nümunə:
var orders = context.Orders
.Include(o => o.Customer) // əlaqəli Customer-ı yükləmək
.Include(o => o.OrderItems) // OrderItems kolleksiyasını yükləmək
.ThenInclude(oi => oi.Product) // hər bir OrderItem üçün Product-u yükləmək
.ToList();
Burada, Include OrderItems-i yükləyir və ThenInclude onlarla əlaqəli Product-ları yükləyir.
Bu şəkildə, Include əlaqəli məlumatların yüklənmə zəncirini başlatır və ThenInclude onu iç-içə əlaqələr üçün genişləndirir.