In Entity Framework 6.x per creare una relazione tra due entity siamo obbligatoi a mettere nella entity figlia una proprietà che rappresenta la foreign key verso la entity padre. Ad esempio, nella entity DettaglioOrdine, siamo obbligati a mettere una proprietà IdOrdine e opzionalmente, possiamo anche mettere una proprietà Ordine. L'obbligo di utilizzo della proprietà come foreign key deriva da un problema all'interno del motore di Entity Framework 6. Essendo Entity Framework Core riscritto da zero, quest'obbligo è stato eliminato e adesso possiamo utilizzare anche solamente la navigation property Ordine senza la foreign key IdOrdine.
public class Ordine{ public int Id { get; set; } .... } public class DettaglioOrdine{ public int Id { get; set; } public Ordine Ordine { get; set; } }
Grazie alle sue convenzioni Entity Framework Core è in grado di stabilire la relazione tra le entity e definire in automatico internamente la foreign key senza che noi dobbiamo definire nulla. Questo rende lo sviluppo del codice molto più pulito che in passato.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Code scanning e advanced security con Azure DevOps
Utilizzare Model as a Service su Microsoft Azure
Usare il versioning con i controller di ASP.NET Core Web API
Effettuare il download di un file via FTP con la libreria FluentFTP di .NET
Eseguire attività basate su eventi con Azure Container Jobs
Utilizzare la session affinity con Azure Container Apps
C# 12: Cosa c'è di nuovo e interessante
Utilizzare le collection expression in C#
Esportare ed analizzare le issue di GitHub con la CLI e GraphQL
Applicare il versioning ai nostri endpoint ASP.NET Core Minimal API
Autenticarsi in modo sicuro su Azure tramite GitHub Actions
Eseguire una GroupBy per entity in Entity Framework
I più letti di oggi
- Evitare il flickering dei componenti nel prerender di Blazor 8
- Rilasciata la Beta 2 di Visual Studio 2008
- tra pochi minuti inizia la keynote della seconda giornata. seguila live su http://aspitalia.com/mix-11 #mix11
- .@dbochicchio ora su #aspnetcore 2 a #netconfit https://aspit.co/netconf-17
- Utilizzare angular-cli per creare una direttiva in Angular 2
- Windows Vista: il ritorno di WinFS con la beta1
- .@CristianCivera tra poco su #azure con i suoi tips&tricks per lo sviluppatore web: https://aspit.co/web15-live #aspilive
- Le novità di C# 10