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
Eseguire script pre e post esecuzione di un workflow di GitHub
Fissare una versione dell'agent nelle pipeline di Azure DevOps
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Centralizzare gli endpoint AI Foundry con Azure API Management
Autenticazione di git tramite Microsoft Entra ID in Azure DevOps
Proteggere le risorse Azure con private link e private endpoints
Gestione file Javascript in Blazor con .NET 9
Combinare Container Queries e Media Queries
Usare i servizi di Azure OpenAI e ChatGPT in ASP.NET Core con Semantic Kernel
Migliorare la scalabilità delle Azure Function con il Flex Consumption
Creare una libreria CSS universale: Immagini
Utilizzare WhenEach per processare i risultati di una lista di task
I più letti di oggi
- Gestire coppie chiave-valore con Autocomplete di jQuery UI in ASP.NET
- Usare Json.NET come motore di serializzazione in ASP.NET MVC
- Microsoft Security Bulletin MS05-014
- Effettuare un redirect permanente di una pagina ASP.NET 4.0
- Attivare l'output caching su ASP.NET Web API
- Gestione CSS in Blazor con .NET 9