Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Entity Framework model change error

I am getting the error

"The model backing the 'DataContext' context has changed since the database was created. Consider using Code First Migrations to update the database".

I am using Entity Framework and have changed my model after declaring DataContext. How can I fix this error?

like image 864
Amita Rai Avatar asked Jun 09 '13 13:06

Amita Rai


3 Answers

If you delete the __MigrationHistory table in SQL Server it should fix it.

like image 184
giathienphu Avatar answered Oct 23 '22 04:10

giathienphu


  1. If you already deployed your application or you don't want remove data from database you must read about Code First Migrations. Here you have a link: http://msdn.microsoft.com/en-us/library/hh770484(v=vs.103).aspx

  2. If you can delete database just do it. EF will create new database that match your model.

  3. You can also disable creating/updating database structure by invoking the following code:

    Database.SetInitializer<MyDbContext>(null);
    
like image 8
Sławomir Rosiek Avatar answered Oct 23 '22 03:10

Sławomir Rosiek


I used database first to create a project after I had changed my database context and solved my problem:

Database.SetInitializer<Models.YourDbContext>(null);

Don't forget to handle the DbUpdateException

like image 1
mernig Avatar answered Oct 23 '22 03:10

mernig