update an sql server database using entity framework code first migration

I have an application that uses a local database. And I have something like 300 databases to update. All of them in remote places.
I then created an application that has two projects. a model with the database tables and another to the context ..
then follow the sequence:
1. the development machine ran the application. that's perfect. created the database.
2. altered a model class.
3. ran the "enable-migrations"
3. ran the "add-migration class1"
4. I ran the "update-database"

worked perfectly.

copied the compiled application and took her to a remote machine. I ran the application and it worked perfectly.

I returned the development machine and changed a new class. performed the following:
1. "add-migration class2"
2. "update-database"

worked perfectly.

I copied the compiled application and took to the remote machine (the same) and ran the program and get an exception saying that the context has changed since the database was created and that I must consider the code first migration.

I will use the program exactly not to need the presence on site.

Where am I going wrong?
Deraldo SilvaAsked:
Who is Participating?
Deraldo SilvaConnect With a Mentor Author Commented:
This works.

very nice. thx to "tilde" @internet.

Database.SetInitializer<DbBancoContexto>(new MigrateDatabaseToLatestVersion<DbBancoContexto, GenerateDatabase.Migrations.Configuration>());

Open in new window

Easwaran ParamasivamCommented:
Could you please put exact exception you got?
Deraldo SilvaAuthor Commented:

Unhandled Exception: System.InvalidOperationException: The model backing the 'Db
BancoContexto' context has changed since the database was created. Consider usi
ng Code First Migrations to update the database (http://go.microsoft.com/fwlink/
   at System.Data.Entity.CreateDatabaseIfNotExists`1.InitializeDatabase(TContext
   at System.Data.Entity.Internal.InternalContext.<>c__DisplayClassf`1.<CreateIn
   at System.Data.Entity.Internal.InternalContext.PerformInitializationAction(Ac
tion action)
   at System.Data.Entity.Internal.InternalContext.PerformDatabaseInitialization(
   at System.Data.Entity.Internal.LazyInternalContext.<InitializeDatabase>b__4(I
nternalContext c)
   at System.Data.Entity.Internal.RetryAction`1.PerformAction(TInput input)
   at System.Data.Entity.Internal.LazyInternalContext.InitializeDatabaseAction(A
ction`1 action)
   at System.Data.Entity.Internal.LazyInternalContext.InitializeDatabase()
   at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType
(Type entityType)
   at System.Data.Entity.Internal.Linq.InternalSet`1.Initialize()
   at System.Data.Entity.Internal.Linq.InternalSet`1.get_InternalContext()
   at System.Data.Entity.Internal.Linq.InternalSet`1.ActOnSet(Action action, Ent
ityState newState, Object entity, String methodName)
   at System.Data.Entity.Internal.Linq.InternalSet`1.Add(Object entity)
   at System.Data.Entity.DbSet`1.Add(TEntity entity)
   at GenerateDatabase.Program.Main(String[] args) in c:\Projects\GenerateDataba
se\GenerateDatabase\Program.cs:line 19
Deraldo SilvaAuthor Commented:

If I use this Database.SetInitializer<DbBancoContexto>(null); the application runs but the migration is not applied. If I take it off, I got the error above.
Deraldo SilvaAuthor Commented:
I do not want the credit for the solution. I am just setting as solution for someone use.
All Courses

From novice to tech pro — start learning today.