2017-04-03 76 views
0

我在web.config中有兩個連接,基本上它們調用的是同一個數據庫。我想以更好的方式管理它,因爲在一個配置中的更改也需要更改第二個連接字符串。將連接字符串調用到web.config中的另一個連接字符串中

<add name="DefaultConnection" connectionString="Data Source=.\SQLEXPRESS;persist security info=True;user id=test;password=test123;database=db-AUTH" providerName="System.Data.SqlClient" /> 

<add name="dbEntities" connectionString="metadata=res://*/InsuranceFinderModel.csdl|res://*/InsuranceFinderModel.ssdl|res://*/InsuranceFinderModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.\SQLEXPRESS;initial catalog=db-AUTH;persist security info=True;user id=test;password=test123;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" /> 

我的問題是,有什麼辦法,我可以調用連接字符串到其他連接字符串。

例如。默認連接字符串數據庫實體像

<add name="dbEntities" connectionString="metadata=res://*/InsuranceFinderModel.csdl|res://*/InsuranceFinderModel.ssdl|res://*/InsuranceFinderModel.msl;provider=System.Data.SqlClient;provider connection string= DefaultConnection" providerName="System.Data.EntityClient" /> 

任何意見,將不勝感激謝謝。

+1

僅供參考:http://stackoverflow.com/questions/6443060/is-it-possible-to-reference-a-connection-string-in-another-connection-string – ACOMIT001

回答

0

您沒有義務將app.config(web.config)文件中定義的連接字符串用於實體連接。您可以在運行時更改實體連接字符串。閱讀這篇文章:http://www.c-sharpcorner.com/UploadFile/dacca2/pass-connection-string-in-run-time-to-entity-framework/

此外,您可以使用StringConnectionBuilder類https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnectionstringbuilder.initialcatalog.aspx獲得另一個連接字符串並分隔連接字符串(DataBase,DataSource等)的每個部分。

解決方案是:獲取DefaultConnection字符串並在運行時更改實體連接。