Как мы можем иметь две строки подключения в Web.Config и переключаться между ними в коде? - PullRequest
9 голосов
/ 19 ноября 2010

Когда я добавляю две строки подключения в web.config, появляется ошибка, которая говорит мне, что я не могу добавить две строки подключения в web.config.

Мне нужна верхняя работа, потому что у меня есть 2 базы данных, и я хочу перенести данные из другой в другую.

Не могли бы вы показать мне способ сделать это?

Ответы [ 5 ]

17 голосов
/ 19 ноября 2010

Когда вы добавляете строку подключения, вы называете ее.

Вы можете получить доступ к каждой такой строке подключения и назначить ее другой переменной, передав эту строку подключения на уровень доступа к данным.

В файле конфигурации:

<connectionStrings>

  <add name="Sales" 
       providerName="System.Data.SqlClient"
       connectionString= "server=myserver;database=Products;uid=<user name>;pwd=<secure password>" />

  <add name="NorthWind" 
       providerName="System.Data.SqlClient" 
       connectionString="server=.;database=NorthWind;Integrated Security=SSPI" />

</connectionStrings>

В вашем коде:

 var conn1 = ConfigurationManager.ConnectionStrings["Sales"].ConnectionString;
 var conn2 = ConfigurationManager.ConnectionStrings["NorthWind"].ConnectionString;
4 голосов
/ 19 ноября 2010

Просто вставьте эти строки в ваш web.config:

<connectionStrings>
    <add name="CS1"
         connectionString="SOME CONNECTION STRING"
         providerName="System.Data.SqlClient" />
    <add name="CS2"
         connectionString="SOME OTHER STRING"
         providerName="System.Data.SqlClient" />
</connectionStrings>

и затем выберите желаемую в своем коде:

string cs = ConfigurationManager.ConnectionStrings["CS2"].ConnectionString;
1 голос
/ 18 января 2015

Мы можем объявить несколько строк подключения в Web.Config или App.Config:

<connectionStrings>
    <add name="SourceDB" connectionString="..." />
    <add name="DestinationDB" connectionString="..." />
</connectionStrings>

В DAL вы можете получить доступ к строкам подключения в соответствии с вашими требованиями:

string SounceConnection = ConfigurationManager.ConnectionStrings["SourceDB"].ConnectionString;
string DestinationConnection = ConfigurationManager.ConnectionStrings["DestinationDB"].ConnectionString;
1 голос
/ 19 ноября 2010

Странно, потому что вы можете указать несколько строк подключения.У них просто должны быть разные имена.

1 голос
/ 19 ноября 2010

Вы можете добавить все строки подключения, которые вы хотите, в web.config. Но они должны иметь разные имена.

...