5

最近我更新了我的软件,我需要在我的数据库中添加一个新表。我在用

Update-Database -Force -Verbose

在我的开发 PC 中更新我的数据库。但是当我在我的客户端机器上安装我的软件的更新版本时,它会抛出以下异常。

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
4

1 回答 1

4

您需要使用Code First Migrations。当您设置 DbContext 时,它将如下所示:

Database.SetInitializer<dbContext>(new MigrateDatabaseToLatestVersion<dbContext, Configuration>());
于 2013-03-04T16:41:14.230 回答