Stavo aggiungendo una migrazione nel mio progetto ASP.NET Core usando EF Core 2.0. Ho eseguito il comando 'Add-Migration' migrationName` nella mia console di gestione pacchetti. La migrazione è stata aggiunta correttamente alla mia cartella di migrazione, tuttavia, durante il tentativo di aggiornare lo snapshot, ho ricevuto questo errore:
L'accesso al percorso 'C: \ percorso \ a \ snapshot \ DbContextModelSnapshot.cs' è negato.
In questo momento ho una nuova migrazione nella mia cartella di migrazione ma una vecchia istantanea perché non può essere aggiornata al momento. Le migrazioni vengono salvate nella stessa cartella dello snapshot e tutti gli utenti hanno accesso in lettura / scrittura alla cartella.
Come posso risolvere questo?
I guess: ho la soluzione sotto il controllo del codice sorgente TFS, con spazio di lavoro del server. Dopo aver inizialmente controllato il codice, il file è diventato di sola lettura. Sembra che PM non controlli automaticamente i file (o aggiunga i file di migrazione) al controllo del codice sorgente. Quindi, per risolvere questo problema: prima di eseguire il comando, controlla lo snapshot e, dopo aver eseguito la migrazione, aggiungi i file appena generati al controllo del codice sorgente.
Ho affrontato la stessa situazione.
Access to the path 'C:\repos\ProjectName\Migrations\ProjectNameDbContextModelSnapshot.cs' is denied.
Appena fatto clic destro del file projectDbContextModelSnapshot.cs con Windows Explorer e ho visto che c'era il flag di sola lettura, e rimosso questa casella di controllo. Problema risolto.