我们怎样才能在Web中配置两个连接字符串并在代码背后切换它们?

Los*_*ord 9 c# asp.net connection-string switch-statement

当我在web.config中添加两个连接字符串时,会出现一个错误,告诉我我无法在web.config中添加两个连接字符串.

我想要上层工作,因为我有2个数据库,我希望将数据从另一个转移到另一个.

你能告诉我这样做的方法吗?

Ode*_*ded 19

添加连接字符串时,请为其命名.

您可以访问每个此类连接字符串并将其分配给另一个变量,并将该连接字符串传递给您的数据访问层.

在配置文件中:

<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>
Run Code Online (Sandbox Code Playgroud)

在你的代码中:

 var conn1 = ConfigurationManager.ConnectionStrings["Sales"].ConnectionString;
 var conn2 = ConfigurationManager.ConnectionStrings["NorthWind"].ConnectionString;
Run Code Online (Sandbox Code Playgroud)


Dar*_*rov 5

只需将这些字符串放在您的 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>
Run Code Online (Sandbox Code Playgroud)

然后在代码中选择你想要的:

string cs = ConfigurationManager.ConnectionStrings["CS2"].ConnectionString;
Run Code Online (Sandbox Code Playgroud)