Entity framework 实体框架迁移
在我的web.config中,我有一个连接字符串集,该字符串集与我的web.release.config中的不同,它被更改为使用生产数据库,使用Entity framework 实体框架迁移,entity-framework,entity-framework-6,Entity Framework,Entity Framework 6,在我的web.config中,我有一个连接字符串集,该字符串集与我的web.release.config中的不同,它被更改为使用生产数据库,使用xdt:transform。问题是,我只在web.config中包含的数据库上运行了addmigration和updatedatabase。当我使用发布配置发布时,是否有某种方法可以运行更新数据库 为了在短期内解决这个问题,我将web.config中包含的连接字符串更改为web.release.config中包含的连接字符串,然后在发布之前运行updat
xdt:transform
。问题是,我只在web.config中包含的数据库上运行了addmigration
和updatedatabase
。当我使用发布配置发布时,是否有某种方法可以运行更新数据库
为了在短期内解决这个问题,我将web.config中包含的连接字符串更改为web.release.config中包含的连接字符串,然后在发布之前运行
updatedatabase
,但是这会破坏使用xdt:transform
?的目的。如果您使用的是VS Publish web工具,您可以检查设置中的“执行代码优先迁移(在应用程序启动时运行)”
我相信,如果您要部署到Azure,他们也可以运行迁移(我记得就在几个月前,肯定还不到一年的时间里,我读到了与此相关的“新的”Azure特定内容)
否则,您可以始终将参数传递给updatedatabase
以指向另一个数据库(ConnectionStringName
,ConnectionString
,ConnectionProviderName
),您不必摆弄Web.config
文件。我不能使用“执行代码优先迁移”“选项,因为我使用的是文件系统选项,而不是web部署。但是,在键入更新数据库时使用参数是有效的,谢谢!