Ho un'applicazione Entity Framework 6. Ho portato il database da SQL Server a PostgreSQL. Ora quando eseguo l'applicazione sto ricevendo questo errore:
Il modello che supporta il contesto 'ApplicationDbContext' è cambiato da quando è stato creato il database. Prendi in considerazione l'utilizzo di Code First Migrations per aggiornare il database ( http://go.microsoft.com/fwlink/?LinkId=238269 ).
L'unica cosa è che lo schema del database non dovrebbe essere cambiato. Se è così, c'è qualcosa di sbagliato nella mia porta che deve essere riparata. Non voglio eseguire una migrazione per portare il database alla nuova versione. Voglio scoprire qual è stato il cambiamento che ha causato questo in modo che possa correggerlo.
Qualcuno sa in che modo Entity Framework decide se il database non è aggiornato e che cosa provoca l'aumento di questo errore?
Entity Framework memorizza la cronologia delle migrazioni e lo stato del modello di database in una tabella denominata MigrationHistory.
Questo documento contiene dettagli sulla personalizzazione di tale tabella.
Suggerisco di non modificare questo, tuttavia. Invece, come soluzione alternativa, è possibile aggiungere una nuova migrazione, eliminare qualsiasi contenuto all'interno del metodo Up()
e quindi aggiornare il database. Questo aggiornerà la cronologia per corrispondere a ciò che hai attualmente.
Tuttavia, quando aggiungi la migrazione, potresti voler rivedere il codice che produce per vedere cosa è cambiato EF. Potrebbe essere in realtà una migrazione legittima.
Modifica: le modifiche allo schema vengono confrontate con gli hash del tuo SSDL.