43 lines
2.0 KiB
Markdown
43 lines
2.0 KiB
Markdown
# Appunti gestione BlaServApp DB
|
|
|
|
|
|
Per la gestione dell'accesso al DB si opera con EFCore --> app blazor server
|
|
|
|
## Scaffolding
|
|
|
|
Per generare le classi da un DB esistente con cui operare EFCore CodeFirst usare lo scaffolding coi seguenti comandi.
|
|
Attenzione: la classe DbCOntext viene creata INSIEME alle viste nella folder DatabaseModel (nell'esempio seguente...)
|
|
|
|
### DB iniziale
|
|
|
|
Scaffold-DbContext "Server=SQL2016DEV;Database=BlaServApp;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir DatabaseModels
|
|
|
|
### SOLO di tabelle/viste selezionate (con force update)
|
|
|
|
Scaffold-DbContext "Server=SQL2016DEV;Database=BlaServApp;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir DatabaseModels -Tables nome_tabella, nome_vista
|
|
|
|
## Impiego multi provider
|
|
|
|
IN caso di scelta per impiego di più providers (MSSql, MariaDB, Sqllite, ...) è necessario gestire in modo diverso le classi di inizializzazione del DbContenxt. Non ancora verificato, ma da approfondire secondo i seguenti links:
|
|
* Multi provider: https://logu.co/efcore-multiple-providers.html
|
|
* Migrations con + providers: https://docs.microsoft.com/en-us/ef/core/managing-schemas/migrations/providers?tabs=dotnet-core-cli
|
|
* Auto update all'avvio progetti (se le migrations sono state generate): https://jasonwatmore.com/post/2019/12/27/aspnet-core-automatic-ef-core-migrations-to-sql-database-on-startup
|
|
|
|
## Ottimizzazioni e spunti
|
|
|
|
Alcuni spunti da approfondire:
|
|
* Lifetime x DbCOntext secondo casi: https://docs.microsoft.com/en-us/ef/core/dbcontext-configuration/
|
|
|
|
## Migrations
|
|
|
|
Approfondimenti:
|
|
* https://docs.microsoft.com/en-us/ef/core/managing-schemas/migrations/?tabs=dotnet-core-cli
|
|
|
|
## Approfondimenti
|
|
|
|
Qualche link di approfondimento:
|
|
|
|
- https://docs.microsoft.com/en-us/ef/core/
|
|
- https://docs.microsoft.com/en-us/ef/core/extensions/
|
|
- https://www.entityframeworktutorial.net/efcore/create-model-for-existing-database-in-ef-core.aspx
|
|
- https://entityframework.net/ef-code-first |