Nello script #481 abbiamo visto che, a partire dalla versione 2.1, Entity Framework Core permette di istanziare entity con costruttori parametrici. Abbiamo anche visto che i nomi dei parametri del costruttore devono coincidere con i nomi delle proprietà. Oltre a questi parametri, nel costruttore possiamo anche iniettare servizi come DbContext, ILazyLoader, IEntityType e altri ancora. Dobbiamo però tenere a mente che questi servizi sono esposti da EF Core e non dal motore di dependency injection di ASP.NET Core. Per questo motivo possono essere iniettati solamente servizi che sono conosciuti da EF Core e non altri servizi.
public class Person { public Person(...) { ... } private Person(MyContext context) { Context = context; } private MyContext Context { get; set; } }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Sfruttare i KeyedService in un'applicazione Blazor in .NET 8
Gestione degli stili CSS con le regole @layer
Sfruttare lo stream rendering per le pagine statiche di Blazor 8
Escludere alcuni file da GitHub Secret Scanning
Popolare una classe a partire dal testo, con Semantic Kernel e ASP.NET Core Web API
Miglioramenti nelle performance di Angular 16
Migliorare la scalabilità delle Azure Function con il Flex Consumption
Effettuare il binding di date in Blazor
Usare un KeyedService di default in ASP.NET Core 8
Triggerare una pipeline su un altro repository di Azure DevOps
Eseguire una ricerca avanzata per recuperare le issue di GitHub
Evitare (o ridurre) il repo-jacking sulle GitHub Actions