Drop or Recreate database with Entity Framework Migrations (Code-First)

Which is the command to recreate or drop the database when using Entity Framework Migrations, not Initializers?

What should I write on the package manager console?

COMMENT:

I'm looking for some command that gives me the same functionality as Database.SetInitializer<>(new DropCreateDatabaseIfModelChanges<>()); but with the migrations approach.

Answers


You can get the same behavior with Migrations by using automatic migrations.

PM> enable-migrations -EnableAutomaticMigrations

In Configuration.cs in the constructor, make sure automatic migrations and allow data loss are set to true...

public Configuration()
{
    AutomaticMigrationsEnabled = true;
    AutomaticMigrationDataLossAllowed = true;
}

Now whenever your model changes, just execute update-database...

PM> update-database

The schema will be changed to match the models and any existing data in the tables will stay there (unless it's in a renamed or removed column). The Seed method is run after the database is updated so you can further control any changes to the data in there.


I went into server explorer and manually deleted all the tables. Then went to the project\Migrations folder and deleted all the migration scripts.

Then a plain old Update-Database -Force did what I needed.


In VS2015, I did the following to resolve it: In solution explorer menu-->Show All-->The App_Data folder shows the LocalDb mdf file-->Right click the file and click Delete-->In Package Manage Condsole, run: Update-Database -Force


Need Your Help

How to avoid postgresql from changing column names when using "select trim"

sql postgresql jdbc trim

I run the following query in my PostgreSql version 9.3 (I'm using PgAdmin III):

Apache Cxf Wsdl2java Create Web Service Client Encoding Error

web-services wsdl cxf wsdl2java

I tried to create web service client, then I am seeing that encoding error.