Il progetto attuale su cui sto lavorando, sto dicendo a Entity Framework di non fare nulla impostando SetInitializer con parametri null:
public EfDbContext()
{
Database.SetInitializer<EfDbContext>(null); //new NullDatabaseInitializer<EfDbContext>());
}
Ho una sceneggiatura che crea pochi tavoli. Quando eseguo lo script, crea il dbo .__ MigrationHistory nel DB.
Come posso disabilitare la migrazione, pensavo che il codice precedente lo avrebbe disabilitato.
Mi sto perdendo qualcosa? Inoltre, non ho la migrazione abilitata e nessun file di configurazione per la migrazione.
Sto usando EF 6.1.3.
Ho risolto il problema aggiungendo il codice seguente in Application_Start()
in Global.asax
:
Database.SetInitializer(new NullDatabaseInitializer<DbContext>());
Nella cartella delle migrazioni c'è un file chiamato Configuration, nel costruttore provare qualcosa del genere:
public Configuration()
{
AutomaticMigrationsEnabled = false;
}
Il modo brutto ma semplice per disabilitare le migrazioni a prescindere dalla configurazione è l'eliminazione della tabella dbo .__ MigrationHistory.