Entity Framework Code First lavora secondo un meccanismo di conventions overs configurations, che consente di sfruttare un insieme di convenzioni implicite in fase di creazione del modello di mapping, così che noi, come sviluppatori, non siamo costretti a dover specificare esplicitamente un mapping.
Una delle convenzioni più comode, quando il modello è in inglese, è quella che prevede automaticamnete il plurale nel nome delle tabelle mappate. Se il nostro modello è in italiano, otteniamo un effetto spiacevole, cioè l'aggiunta di una s finale al nome delle entità: ad esempio, Clienti diventerà Clientis.
Si può ovviare a questo inconveniente facendo l'override del metodo OnModelCreating all'interno della classe in cui è definito il nostro DbContext e procedendo alla rimozione della convezione specifica:
using System.Data.Entity.ModelConfiguration.Conventions; ... protected override void OnModelCreating(DbModelBuilder modelBuilder) { modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Effettuare il deploy di immagini solo da container registry approvati in Kubernetes
Eseguire query manipolando liste di tipi semplici con Entity Framework Core
Effettuare update massivi con Entity Framework Core 7
Usare un KeyedService di default in ASP.NET Core 8
Gestire liste di tipi semplici con Entity Framework Core
Effettuare il pull di git LFS in un workflow di GitHub
3 metodi JavaScript che ogni applicazione web dovrebbe contenere - Parte 2
Installare le Web App site extension tramite una pipeline di Azure DevOps
Applicare il versioning ai nostri endpoint ASP.NET Core Minimal API
Definire lo stile CSS in base alle dimensioni del container
Effettuare chiamate con versioning da Blazor ad ASP.NET Core
Utilizzare Model as a Service su Microsoft Azure