
Entity Framework Core gevorderd
Raw SQL, stored procedures, transacties, AsNoTracking, AsSplitQuery, query tags, interceptors, prestatie-tuning
1Hoe voer je een ruwe SQL-query uit om entiteiten op te halen in EF Core?
Hoe voer je een ruwe SQL-query uit om entiteiten op te halen in EF Core?
Antwoord
De methode FromSql() of FromSqlRaw() maakt het mogelijk ruwe SQL-query's uit te voeren en daarbij entiteiten terug te geven die door de DbContext worden getrackt. Dit is handig in scenario's waarin LINQ de query niet rechtstreeks kan uitdrukken, zoals het aanroepen van stored procedures of tabelwaardefuncties. De resultaten kunnen vervolgens met LINQ worden samengesteld om filters toe te voegen of relaties op te nemen.
2Wat is het verschil tussen FromSqlRaw() en ExecuteSqlRaw() in EF Core?
Wat is het verschil tussen FromSqlRaw() en ExecuteSqlRaw() in EF Core?
Antwoord
FromSqlRaw() wordt gebruikt om SELECT-query's uit te voeren die getrackte entiteiten teruggeven en samenstelling met LINQ mogelijk maken. ExecuteSqlRaw() wordt gebruikt om niet-query-commando's (INSERT, UPDATE, DELETE) uit te voeren en geeft het aantal getroffen rijen terug. FromSqlRaw() is van toepassing op een DbSet, terwijl ExecuteSqlRaw() van toepassing is op Database. Dit onderscheid waarborgt typeveiligheid en modelconsistentie.
3Hoe roep je een stored procedure aan die entiteiten teruggeeft in EF Core?
Hoe roep je een stored procedure aan die entiteiten teruggeeft in EF Core?
Antwoord
Gebruik FromSqlRaw() of Database.SqlQuery<T>() om een stored procedure aan te roepen en de resultaten naar entiteiten te mappen. Het is cruciaal om na de aanroep AsEnumerable() toe te voegen om te voorkomen dat EF Core probeert te componeren op de resultaten van de stored procedure, wat SQL-syntaxisfouten zou veroorzaken. Parameters kunnen worden doorgegeven met de @p0, @p1-syntaxis om SQL-injectie te voorkomen.
Wat is de rol van AsNoTracking() in EF Core?
Wanneer gebruik je AsNoTrackingWithIdentityResolution() in plaats van AsNoTracking()?
+22 gespreksvragen
Andere .NET-sollicitatieonderwerpen
C#-basisbeginselen
LINQ & Delegates
Essentials van de C#-taal
ASP.NET Core-grondbeginselen
Levenscyclus van requests in ASP.NET Core
Configuration & Settings
Levenscyclus van de applicatie
Dependency Injection
Entity Framework Core
Minimal APIs
Web API-ontwikkeling
Async in ASP.NET Core
Authentication & Authorization
HttpClient & Networking
JSON-serialisatie
Geavanceerde C#-functies
Clean Architecture
Logging, Monitoring & Observability
Unit Testing & xUnit
Integratietests
Docker & Containerization
NuGet-pakketbeheer
Memory Management & GC
Reactief programmeren
Async/await & Patterns
.NET Design Patterns
Prestatieoptimalisatie
Beveiliging & Best Practices
SignalR & realtime
Microservices-architectuur
Beheers .NET voor je volgende gesprek
Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.
Begin gratis