Sto creando un'API Core ASP.NET e ho un progetto nella mia soluzione denominata MyProj.API
e un altro progetto denominato MyProj.Data
. Entrambi sono progetti di app Web Core. Semplicemente, il progetto API
include tutti i controller e altre logiche, mentre il progetto Data
include i modelli, il contesto, il repository e le migrazioni. Ho ospitato con successo l'app in Azure, ma il punto è che al momento della pubblicazione del progetto API
non era possibile scegliere la migrazione da applicare. Però, se dotnet ef dbcontext list --json
comando dotnet ef dbcontext list --json
all'interno del progetto API
, mi mostra con successo il contesto che viene dal progetto Data
. Quindi, vorrei sapere se esiste un modo per applicare manualmente una migrazione a un'app ospitata in Azure?
È possibile applicare le migrazioni in fase di esecuzione o utilizzare Update-Database
con il parametro -ConnectionString
nel prompt Gestione pacchetti di Visual Studio.
Per assistenza, digitare Get-Help Update-Database -detailed
nel prompt.
Per la migrazione manuale su .net core, è possibile seguire questo collegamento .
Potrebbe essere necessario eseguire manualmente update-database
in Package Manager Console di VS, oppure è possibile utilizzare Powershell e cd nella directory del progetto ed eseguire l' dotnet ef database update
per applicare eventuali migrazioni in sospeso per il contesto al database, quindi distribuire il proprio applicazione all'app web blu.
Passaggi dettagliati come di seguito: Nel tuo studio visivo -> Console Gestione pacchetti, esegui il seguente comando:
1. dotnet ef migrations add AddProperty
2. dotnet ef database update
Quindi ripubblicare il progetto.
Inoltre, potresti anche seguire questo problema simile.