启用迁移的EF6 Code First是否支持远程配置

时间:2013-12-25 07:40:55

标签: asp.net-mvc-4 configuration-files ef-migrations entity-framework-6

到目前为止,在我们所有的web应用程序项目(mvc4)中,db ConnectionString不在项目.config文件中,而是在不同的服务器(配置服务器)上,应用程序本身在启动时将其拉出。

现在我们正在使用EF 6 CodeFirst和已启用的迁移。 因此,当我们对db模型进行更改时,在包管理中我们运行:

add-migration 'AnotherScript'

然后

update-database

然而,为了使其工作,ConnectionString需要在Web.config中,以便包管理器可以找到它。

有没有办法让这个连接字符串远程,如果有的话怎么样? 我的想法是让包管理器在我的对象中运行代码,名为ConfigurationUtil,它将获得远程配置。

1 个答案:

答案 0 :(得分:1)

有一个解决方案,但它没有开箱即用。

  1. 您需要实现一个自定义Package Manager Console命令,该命令使用源中的连接字符串初始化某个变量$connection string。查看this question了解一些详细信息。

  2. 现在,您可以使用自定义连接字符串update-database

  3. 运行Update-Database -Verbose -ConnectionString $connectionstring