Code-First è una nuova feature introdotta in Entity Framework, attualmente in CTP 5 ma a Marzo 2011 in RTM. Questa nuova feature permette di effetuare il mapping di una entity verso la relativa tabella del database tramite codice. In questo primo script vedremo come mappare una entity verso una tabella nel database.
Il primo step consiste nel creare la classe come di seguito.
public class Session { public int Id { get; set; } public string Name { get; set; } public string Level { get; set; } }
Una volta creata la entity, tutto ciò che dobbiamo fare è creare una seconda classe che eredita da DbContext nel seguente modo.
public class MyContext : DbContext { public DbSet<Session> Sessions { get; set; } }
Le classi DbContext e DbSet sostituiscono rispettivamente ObjectContext e ObjectSet e sono responsabili della magia dietro Code-First. Infatti attraverso la creazione della classe MyContext e della proprietà Sessions, la classe Session viene mappata sull'omonima tabella nel database e le proprietà automaticamente mappate con i campi (a patto che i nomi coincidano).
L'ultimo step consistere nell'aggiungere alla sezione connectionString una stringa di connessione che punti al database e che abbia come nome MyContext.
<add name="MyContext" connectionString="Database=db;integrated security=SSPI;server=(local)" providerName="System.Data.SqlClient" />
A questo punto possiamo usare la classe MyContext così come siamo abituati ad usare la classe che eredita da ObjectContext.
using (var ctx = new MyContext()){ var s = ctx.Sessions.First(); }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Ottimizzare la latenza in Blazor 8 tramite InteractiveAuto render mode
Eseguire operazioni sui blob con Azure Storage Actions
Gestire undefined e partial nelle reactive forms di Angular
Miglioramenti nelle performance di Angular 16
Filtering sulle colonne in una QuickGrid di Blazor
Filtrare i dati di una QuickGrid in Blazor con una drop down list
Code scanning e advanced security con Azure DevOps
Creazione di plugin per Tailwind CSS: espandere le Funzionalità del Framework
Modificare i metadati nell'head dell'HTML di una Blazor Web App
Implementare il throttling in ASP.NET Core
Gestire i dati con Azure Cosmos DB Data Explorer
I più letti di oggi
- Centrare elementi in HTML tramite CSS
- Proteggere le risorse Azure con private link e private endpoints
- Utilizzare EF.Constant per evitare la parametrizzazione di query SQL
- Referenziare un @layer più alto in CSS
- Gestire i dati con Azure Cosmos DB Data Explorer
- Inference di dati strutturati da testo con Semantic Kernel e ASP.NET Core Web API