c# - 连接数据源之间的选择 C#

标签 c# datasource sqldatasource

我的表单上有一个 dataAdapter、dataSet 和 BindingSource,用于连接到 SQL 数据库以显示表单中的数据,一切正常。但是,我需要有两个连接服务器的选项。 例如 ISSP\SQLEXPRESS 和 MY-WEB。 我不知道该怎么做,想知道是否有人可以给我一些帮助,从哪里开始?谢谢 :) 但是当使用变量时它说它无法连接。

我正在使用下面的代码,但它说它无法连接,所以我想知道我引用的变量是否错误?

sqlConnectionNW.ConnectionString = "Data Source=@server;Initial Catalog=Northwind;Integrated Security=True";

当我将代码更改为以下内容时,它可以正常工作。

sqlConnectionNW.ConnectionString = "Data Source=ISSP\SQLEXPRESS;Initial Catalog=Northwind;Integrated Security=True";

最佳答案

首先将两个连接设置添加到您的应用配置文件中:

<connectionStrings>
    <add name="Test"
     connectionString="Data Source=ISSP\SQLEXPRESS;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;"
     providerName="System.Data.SqlClient" />
    <add name="Production"
     connectionString="Data Source=MY-WEB;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;"
     providerName="System.Data.SqlClient" />
</connectionStrings>

在您的应用程序中,向表单添加一个 ComboBox(在本例中称为 uiConnection),并添加以下代码来填充它:

uiConnection.ValueMember = "Name";
foreach (ConnectionStringSettings con in ConfigurationManager.ConnectionStrings)
    {
        uiConnection.Items.Add(con);
    }

您现在可以使用下拉列表指定要连接到的数据库。当您获取数据时,请执行以下操作以获得正确的连接字符串:

ConnectionStringSettings connection = uiConnection.SelectedItem as ConnectionStringSettings
string queryString = "SELECT CustomerID, CompanyName FROM dbo.Customers";
SqlDataAdapter adapter = new SqlDataAdapter(queryString, connection);
DataSet customers = new DataSet();
adapter.Fill(customers, "Customers");

关于c# - 连接数据源之间的选择 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5418316/

相关文章:

grid - Kendo UI 网格 : does grouping cause the dataSource change event to fire, 的设计?

kendo-ui - 为什么在调用options.error函数时,KendoUI Grid为什么不回滚删除?

c# - 在 C# .net 后面的代码中从我的 SqlDataSource 访问数据

c# - MSMQ - 快速生产者/慢消费者

c# - 使用 C# 呈现 HTML

c# - 从 Windows 10 1709 开始优雅地重新启动 explorer.exe,Fall Creators Update aka Redstone 3

mysql - 如何将DeleteParameter值获取到后面的代码中?

c# - 可空类型如何使用比较运算符处理空值?

c# - 来自同一数据集的多个 ComboBox 控件

c# - ora-00972 标识符太长 oracle 10g