So far, we have seen how we can take control over the location of the database and name of the database and how we can set the database initialization strategy. One thing to note here is that the database that will be created by Entity Framework will always be an empty database irrespective of the strategy we chose to initialize the database.
There are many scenarios where we might want to have some values inserted in the database once it is created but before it is used. Master tables and lookup tables are such examples. Also, in some cases, the application deployment wants the data for the administrators to be populated with their default credentials. Or perhaps we want some dummy data in our tables to test how our application behaves in a specific scenario.
Seeding data is very important when we are using the DropCreateDatabaseAlways
or DropCreateDatabaseIfModelChanges
initialization strategies, since every time we run the application, the database will be recreated (in the...