繁体   English   中英

如何在app.config中更改连接字符串

[英]How to change connection string in app.config

我有一个程序可以使用TableAdapters创建的DataTables生成报告。 现在,我的客户有一个新数据库,他希望能够在新数据库和旧数据库之间切换。 我发现可以通过更改app.config中的连接字符串来做到这一点,但是我不知道如何在运行时做到这一点。 你能建议我一种方法吗? 谢谢

我不知道在运行时该怎么做

别。 您可以在app.config具有多个连接字符串,并在需要时访问每个字符串。

组态:

<connectionStrings>
  <add name="conn1" providerName="System.Data.SqlClient"
       connectionString="..." />
  <add name="conn2" providerName="System.Data.SqlClient"
       connectionString="..." />
</connectionStrings>

在代码中:

var conn1 = ConfigurationManager.ConnectionStrings["conn1"];
var conn2 = ConfigurationManager.ConnectionStrings["conn2"];

您可以定义多个连接字符串,如下所示:

<add name="Conn" connectionString="Data Source=PC\SQLEXPRESS;Initial Catalog=NHIB;Integrated Security=True" providerName="System.Data.SqlClient"/>-->
<add name="Conn1" connectionString="Data Source=WINSERVER;Initial Catalog=NHIB1;Integrated Security=True;" providerName="System.Data.SqlClient"/>

之后,您可以根据需要使用conn或conn1。

SqlConnection con;
con = new SqlConnection(ConfigurationManager.AppSettings.Get("Conn"));  Or
con = new SqlConnection(ConfigurationManager.AppSettings.Get("Conn1"));

您可以如下切换它们:

string connectionString = HttpContext.Current.Request.IsLocal ? 
ConfigurationManager.ConnectionStrings["Conn"].ConnectionString :
ConfigurationManager.ConnectionStrings["Conn1"].ConnectionString;
yourDataContext = new YourApplicationDataContext(connectionString);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM