Junior — Middle
ORMде байланыштар менен иштөөдө include жана theninclude ыкмаларынын айырмасы эмне?
sobes.tech AI
AIден жооп
ORMде (мисалы, Entity Framework) Include ыкмасы биринчи деңгээлдеги байланышкан объекттерди жүктөө үчүн колдонулат. Бул негизги объект менен бирге навигациялык мүлктүн байланышкан маалыматтарын жүктөөгө мүмкүндүк берет.
ThenInclude экинчи жана андан жогору деңгээлдеги байланышкан объекттерди жүктөө үчүн колдонулат, башкача айтканда, Include кийинки ички навигациялык мүлктөр үчүн.
Мисал:
var orders = context.Orders
.Include(o => o.Customer) // байланышкан Customer жүктөө
.Include(o => o.OrderItems) // OrderItems топтомун жүктөө
.ThenInclude(oi => oi.Product) // ар бир OrderItem үчүн Product жүктөө
.ToList();
Бул жерде, Include OrderItemsти жүктөйт, ал эми ThenInclude алар менен байланышкан Productтерди жүктөйт.
Мындайча айтканда, Include байланышкан маалыматтарды жүктөө чынжырын баштайт, ал эми ThenInclude аны ички байланыштар үчүн кеңейтет.