2013-03-01 53 views
4

我的連接字符串當前在我的web.config文件中。使用單獨的文件來維護實體框架的連接字符串

是否有可能把它放在一個單獨的文件中,並指向它的實體框架。

+0

appsettings具有可指向其他文件的[file](http://msdn.microsoft.com/zh-cn/library/aa903313%28v=VS.71%29.aspx)屬性。爲了安全起見,建議這個文件也有一個'.config'擴展名。 – qujck 2013-03-01 09:12:48

+0

對不起,但實體框架的連接字符串存儲在連接字符串元素下,而不是應用程序配置。但你的解決方案指出我搜索類似的東西,我發現http://stackoverflow.com/questions/6582970/separate-connectionstrings-and-mailsettings-from-web-config-possible – Mortalus 2013-03-01 09:29:10

+0

可能重複的[Separate ConnectionStrings和mailSettings從web.config?可能?](https://stackoverflow.com/questions/6582970/separate-connectionstrings-and-mailsettings-from-web-config-possible) – jamiebarrow 2017-10-09 15:53:32

回答

18

我找到了答案在這裏Separate ConnectionStrings and mailSettings from web.config? Possible?

<configuration> 
    <connectionStrings configSource="connections.config"/> 
</configuration> 

<connectionStrings> 
    <add name="name" connectionString="conn_string" providerName="System.Data.SqlClient" /> 
    <add name="name2" connectionString="conn_string2" providerName="System.Data.SqlClient" /> 
</connectionStrings> 
3

萬一有人絆倒在這個問題文件connections.config。您可以使用configSource將連接字符串放在單獨的配置文件中,但不要期望EF設計人員能夠愉快地使用它。

每次去編輯edmx和'從數據庫更新'它都會要求一個新的連接字符串,然後總是想把它保存回web.config。不理想,對我來說不可行。 EF6和之前的情況就是如此。

+0

隨着數據庫第一次設計,是的,你是對的,但代碼先不會編輯web.config,這是任何項目應該有的最實際和最正確的方法。 – 2017-02-08 14:29:12

+0

不要以爲「Code First」始終是新的EF項目的最佳途徑,即使是「綠色領域」。 Code First的數據庫更新遷移模型在過去一直非常令我頭疼,因爲即使我在數據設計方面有一絲白熱,我也更喜歡數據庫優先方法。您可以更改數據庫,編寫腳本,以便對其他環境進行相同的更改,然後更新EDMX並開始使用更新的域圖層。 – KeithS 2017-03-23 21:35:01

+0

當然,如果您要採用DB-First方法,則EF6/Core 1.0會傾倒模型設計器,因此您幾乎堅持使用EF6。 – KeithS 2017-03-23 21:41:11

相關問題