2014-01-16 41 views
0

在我的web.config中,我有一個連接字符串集,它與我的web.release.config不同,它被更改爲使用我們的生產數據庫使用xdt:transform。問題是,我只在web.config中包含的數據庫上運行add-migrationupdate-database。當我使用發佈配置發佈時,有什麼方法可以運行update-database實體框架遷移

爲了解決這個問題在短期內,我改變web.config文件中包含的一個包含在web.release.config,然後運行發佈之前update-database連接字符串中,但是這違背了使用一個xdt:transform的目的?

回答

1

如果您使用VS Publish Web工具,您可以在Settings中選中「執行代碼優先遷移(在應用程序啓動時運行)」。如果你部署到Azure,他們也可以在他們這邊運行遷移,我相信(我記得在幾個月前就讀過關於這個「新」特定Azure的東西,絕對不到一年) 。

否則,你總是可以傳遞參數給Update-Database瞄準另一個數據庫(ConnectionStringNameConnectionStringConnectionProviderName),你不應該有與Web.config文件撥弄。

+0

我無法使用「執行代碼優先遷移」選項,因爲我使用的是文件系統選項,而不是Web部署。但在輸入'Update-Database'時使用參數,謝謝! – CallumVass