Junior — Middle
Melyik szakaszban történik az adatok betöltése az adatbázisból az alkalmazás objektumaiba az Entity Framework használata során?
sobes.tech MI
Válasz az MI-től
Az Entity Framework-ben az adatok betöltése az adatbázisból az alkalmazás objektumaiba a lekérdezés futtatásakor történik, azaz LINQ-lekérdezéseken vagy a kontextus metódusain keresztül történő adatbázis hozzáféréskor.
Ezt hívják Lazy Loading-nak (késleltetett betöltés) vagy Eager Loading-nak (türelmes betöltés), a beállításoktól függően:
- Eager Loading (Türelmes betöltés): az adatok azonnal betöltődnek a lekérdezés végrehajtásakor, például az Include metódus segítségével.
- Lazy Loading (Késleltetett betöltés): az adatok az első hozzáféréskor töltődnek be az objektum navigációs tulajdonságához.
Így az objektumok a kérés végrehajtásakor jönnek létre és töltődnek fel adatokkal, nem a kód deklarálásakor vagy fordításakor.
Példa:
using(var context = new AppDbContext())
{
var users = context.Users.Include(u => u.Orders).ToList(); // Türelmes betöltés
}
Itt a Users és a kapcsolódó Orders táblák adatai azonnal betöltődnek a ToList() hívásakor.