Dal database alla classe
Iniziare con EF Core su SQL Server è più semplice di quanto sembri. Basta definire il modello, aggiungere la stringa di connessione e lanciare dotnet ef migrations add Init. Il comando crea lo schema in pochi secondi.
Migrazioni intelligenti
Le migrazioni non sono solo un trucco per creare tabelle. Con --no-build si evita di ricostruire l’app ad ogni cambiamento, risparmiando tempo prezioso durante lo sviluppo.
- Tipi nativi: DateTimeOffset, Guid, decimal.
- Mapping complesso: Owned types per aggregati senza chiavi proprie.
Performance sotto il microscopio
SQL Server offre ottimizzazioni che EF Core sfrutta al massimo. L’uso di Include con ThenInclude riduce le query in cascata, mentre AsNoTracking migliora la lettura quando i dati non cambiano.
Debugging senza stress
Il pacchetto SQLEchoLogger stampa le query sul console. In un ambiente di sviluppo, vedere l’SQL reale è oro puro per individuare colli di bottiglia.
Consigli pratici per il team
Definire una convenzione di naming per tabelle e colonne aiuta a mantenere la coerenza. Utilizzare le shadow properties per tracciamento delle modifiche è un trucco poco noto ma potente.