2013-03-04 3 views
4

Недавно я обновил свое программное обеспечение, и мне нужно добавить новую таблицу в мою базу данных. Я используюКак добавить таблицу в существующую базу данных без потери данных в Entity-framework Code first 5.0?

Update-Database -Force -Verbose 

обновить мою базу данных на своем компьютере разработки. Но когда я устанавливаю обновленную версию своего программного обеспечения на своей клиентской машине, тогда он генерирует следующее исключение.

The model backing the ‘MyContext’ context has changed since the database was created. Consider using Code First Migrations to update the database (http://go.microsoft.com/fwlink/?LinkId=238269) 

Если я откажу и заново создаю базу данных, то это будет работать нормально.

Но совершенно невозможно отбросить существующую базу данных на моей клиентской машине. Мне нужно добавить новую таблицу, не теряя никаких данных.

Скажите, пожалуйста, как я могу добавить новую таблицу без потери данных в моей существующей базе данных.

Я использую

Visual Studio 2012 
Entity Framework 5.0 
DotNet 4.0 
MSSQL Server 2008 R2 
+0

Вы прошли по этой ссылке, чтобы узнать о First First Migrations? Вот как обновить базу данных, не отбрасывая ее с помощью EF. – Jimmy

ответ

3

Вы должны использовать Code First Migrations. Когда вы настроите свой DbContext, он будет выглядеть примерно так:

Database.SetInitializer<dbContext>(new MigrateDatabaseToLatestVersion<dbContext, Configuration>()); 
Смежные вопросы