La novità più attesa in Entity Framework 5 è sicuramente la possibilità di mappare una proprietà che rappresenta un enum. Vediamo in questo script come sia ora semplice utilizzare questa funzionalità.
Il primo passo è definire l'enum e in questo caso creiamo un enum che rappresenta il sesso di una persona.
public enum Gender{ Male, Female }
Una volta definito l'enum, creiamo una classe di cui una proprietà sia del tipo dell'enum. In questo caso creiamo una classe Person che ha una proprietà sesso di tipo Gender.
public class Person{ public int Id {get; set; } public Gender Gender {get; set; } }
Ora che abbiamo la classe, non ci rimane che creare la classe di contesto che mappa la classe sul database.
public partial class PersonContext : DbContext { public DbSet<Person> People { get; set; } }
A questo punto, grazie a Entity Framework 5, la proprietà Gender è mappata sul database come una colonna di tipo int e sarà sempre Entity Framework 5 a occuparsi della conversione da int ad enum, quando eseguiamo una query, e da enum a int, quando persistiamo l'oggetto. Ovviamente, possiamo anche eseguire query che ordinano, filtrano, raggruppano (e così via), in base alla proprietà di tipo enum:
var males = ctx.People.Where(p => p.Gender == Gender.Male);
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Potenziare la ricerca su Cosmos DB con Full Text Search
Creare una libreria CSS universale: Nav menu
Recuperare automaticamente un utente e aggiungerlo ad un gruppo di Azure DevOps
Sfruttare GPT-4o realtime su Azure Open AI per conversazioni vocali
Abilitare automaticamente il force push di un gruppo su Azure DevOps
Ridurre il reflow cambiando il CSS
Utilizzare i variable font nel CSS
Triggerare una pipeline su un altro repository di Azure DevOps
Creare una libreria CSS universale: Immagini
Effettuare il log delle chiamate a function di GPT in ASP.NET Web API
Il nuovo controllo Range di Blazor 9
Collegare applicazioni server e client con .NET Aspire
I più letti di oggi
- Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
- .NET Conference Italia 2025 - Milano
- The Agentic Day - Milano
- Tutorial LINQ
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Invocare trigger non HTTP delle Azure Function durante lo sviluppo
- Utilizzare i variable font nel CSS