Lo scaffolding offerto da Visual Studio rappresenta un buon punto di partenza per costruire applicazioni con logica CRUD orientata al modello, ad esempio legato direttamente al database con Entity Framework.
I modelli di default rappresentano un punto di partenza e possono essere personalizzati, per esempio per iniettare logica custom all'interno di una action di un Controller, oppure per cambiare parti delle View e sfruttare al meglio le nostre necessità, senza dover ripetere ogni volta l'operazione, ma facendo già generare codice che rispetti le nostre reali necessità.
Per procedere a questa personalizzazione, occorre recuperare i template originale, che sono a questo indirizzo (per VS 2013):
C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates
e copiarli all'interno della directory CodeTemplates, posta nella root all'interno dell'applicazione (e che non va distribuita, poiché contiene solo file necessari alla solution).

Nell'esempio abbiamo copiato i template (solo in C#, nella directory sono presenti anche in VB) per generare View e Controller basati su Entity Framework.
Con lo stesso approccio si possono cambiare i template di scaffolding per Web API, per generare le aree di MVC, le view vuote, e così via.
I template sono in formato T4, un linguaggio di scripting di Visual Studio, che quest'ultimo utilizza per generare codice in maniera automatica e di cui abbiamo già parlato in passato.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
La gestione della riconnessione al server di Blazor in .NET 9
Gestione dei nomi con le regole @layer in CSS
Il nuovo controllo Range di Blazor 9
Aprire una finestra di dialogo per selezionare una directory in WPF e .NET 8
Managed deployment strategy in Azure DevOps
Generare HTML a runtime a partire da un componente Razor in ASP.NET Core
Gestione degli eventi nei Web component HTML
Rendere le variabili read-only in una pipeline di Azure DevOps
Proteggere le risorse Azure con private link e private endpoints
Migliorare i tempi di risposta di GPT tramite lo streaming endpoint in ASP.NET Core
Ottimizzazione dei block template in Angular 17
Ottimizzare le pull con Artifact Cache di Azure Container Registry