我的数据库已经设置好了,我想向模型添加一个新字段,向表格添加一个新列,是否有一种方法可以在不丢失所有数据的情况下完成此操作?通常,如果您删除数据库,它将自动重新创建所有内容,但我不想丢失数据。我正在使用 SQL Server 2008 作为数据库。
我的数据库已经设置好了,我想向模型添加一个新字段,向表格添加一个新列,是否有一种方法可以在不丢失所有数据的情况下完成此操作?通常,如果您删除数据库,它将自动重新创建所有内容,但我不想丢失数据。我正在使用 SQL Server 2008 作为数据库。
如果您正在使用Code First,像这种情况下我总是手动将列添加到数据库中。不幸的是,没有简单的方法可以使用Code First自动进行增量模型更新。
例如,EF Code First自己的错误甚至指定手动更新为最佳选项:
“your context”上下文的模型支持已更改,因为创建了数据库。要么手动删除/更新数据库,要么使用IDatabaseInitializer实例调用Database SetInitializer。例如,DropCreateDatabaseIfModelChanges策略将自动删除并重新创建数据库,并可选择使用新数据进行填充。