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
Aprire una finestra di dialogo per selezionare una directory in WPF e .NET 8
Utilizzare il nuovo modello GPT-4o con Azure OpenAI
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Visualizzare le change sul plan di Terraform tramite le GitHub Actions
Change tracking e composition in Entity Framework
Migliorare l'organizzazione delle risorse con Azure Policy
Gestire domini wildcard in Azure Container Apps
Cancellare una run di un workflow di GitHub
Definire stili a livello di libreria in Angular
Cambiare la chiave di partizionamento di Azure Cosmos DB
Assegnare un valore di default a un parametro di una lambda in C#
Testare l'invio dei messaggi con Event Hubs Data Explorer