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
Mappare una complex property di una entity su un campo JSON
Introduzione ai web component HTML
Abilitare il rolling update su Azure Functions flex consumption
Utilizzo delle stepped value functions nel CSS
Migrare applicazioni legacy nel cloud con Azure App Service Managed Instance
Utilizzare i variable font nel CSS
Configurare e gestire sidecar container in Azure App Service
Gestire progetti .NET + React in .NET Aspire
Evidenziare una porzione di testo in un pagina dopo una navigazione
Mischiare codice server side e client side in una query LINQ con Entity Framework
Self-healing degli unit test con Copilot in GitHub
Recuperare gli audit log in Azure DevOps
I più letti di oggi
- Effettuare il multi-checkout in linea nelle pipeline di Azure DevOps
- Effetto turnstile su tutte le pagine con il Windows Phone Toolkit
- Alleggerire le applicazioni WPF sfruttando gli oggetti Freezable
- Esaminare documenti XML con namespace utilizzando LINQ to XML
- Le DirectInk API nella Universal Windows Platform
- Sfruttare una CDN con i bundle di ASP.NET
- Gli oggetti CallOut di Expression Blend 4.0


