Nello script #535 abbiamo introdotto EF Core Power Tools, un'estensione per Visual studio che permette, oltre ad altre funzionalità, di effettuare il reverse engineering di un database e di ottenere le classi e il relativo mapping. Tra le varie opzioni di generazione del codice, c'è la possibilità di scegliere se usare per classi e proprietà gli stessi nomi di tabelle e campi. In caso positivo, vengono usati gli stessi nomi; in caso negativo i nomi vengono messi al singolare (solo per nomi inglesi).
Possiamo ulteriormente personalizzare questo processo attraverso una terza tecnica che ci permette di personalizzare completamente i nomi di classi e proprietà. Per sfruttare questa tecnica dobbiamo creare un file efpt.renaming.json nella root del progetto e impostarlo come in questo esempio.
[ { "UseSchemaName": false, "SchemaName": "dbo", "Tables": [ { "Name": "Tab_Clienti", "NewName": "Cliente", "Columns": [ { "Name": "Clienti_ID", "NewName": "Id" }, ] } ] } ]
In fase di reverse engineering, EF Core Power Tools legge questo file e quando trova la tabella Tab_Clienti crea la classe Cliente e quando all'interno della tabella trova il campo Clienti_ID crea la proprietà Id. Per le tabelle e i campi che non sono inclusi nel file, vengono usati i nomi del database.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Controllare lo stato di un servizio gRPC in ASP.NET Core tramite Health Check
Compilare automaticamente applicazioni .NET 6 con le pipeline di Azure DevOps e GitHub Action
Welcome back to .NET
Chiamare un endpoint ASP.NET Core protetto da Certificate Authentication
Usare il throttling per limitare la frequenza degli eventi in Blazor
Ottimizzare le performance di serializzazione e deserializzazione JSON con System.Text.Json e i source generators
Recuperare la data di creazione e ultima modifica di un record con Entity Framework Core e le temporal table di SQL Server
Taggare le query create con EF Core con informazioni di debug sul codice
Comprimere le immagini contenute in un repository con una GitHub Action
Modificare una variabile d'ambiente di un deployment di Kubernetes
Graceful shutdown di un hosted service di ASP.NET Core
Generare un QR Code da ASP.NET Web API