Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 连接到多个SQL Server_C#_Sql Server_Linq_Database Connection - Fatal编程技术网

C# 连接到多个SQL Server

C# 连接到多个SQL Server,c#,sql-server,linq,database-connection,C#,Sql Server,Linq,Database Connection,我有几个数据库位于本地网络的许多SQL Server(2008)中。所有这些数据库都具有相同的结构和表,它们之间唯一的区别是数据。 我需要一个软件,当用户输入用户名和密码的特定服务器的地址,该软件只是有权登录到该服务器,并从该服务器检索数据 如果我像这样使用连接字符串: string server_address = "..."; string database = "..."; string username = "..."; string password = "...";

我有几个数据库位于本地网络的许多SQL Server(2008)中。所有这些数据库都具有相同的结构和表,它们之间唯一的区别是数据。 我需要一个软件,当用户输入用户名和密码的特定服务器的地址,该软件只是有权登录到该服务器,并从该服务器检索数据

如果我像这样使用连接字符串:

string server_address = "...";
string database = "...";
string username = "...";
string password = "...";        
string connectString = "Data Source=" + server_address + ";Initial Catalog= " + database + ";uid= " + username + ";pwd= " + password + "\"";
SqlConnection conn = new SqlConnection(connectString);
conn.Open();
....
conn.Close();
我可以用这种类型的连接处理我的问题

但是,我使用LINQ检索数据,连接字符串存储在文件“app.config”中。那么,如何更改此文件中的字符串? 例如,我当前的测试连接字符串app.config是:

<connectionStrings>
<add name="MyProgram.Properties.Settings.TestDatabaseConnectionString"
connectionString="Data Source=172.16.1.73;Initial Catalog=TestDatabase;uid=sa;pwd=1"
providerName="System.Data.SqlClient" />
</connectionStrings>

我在我的计算机上运行这个程序只是为了测试,但是当这个程序在另一台计算机上运行时,用户必须输入服务器地址“172.16.1.xxx”、用户名和密码。如何使程序在app.config文件中更改这些内容


提前谢谢。

我想你可以这样做:

string server_address = "...";
string database = "...";
string username = "...";
string password = "...";        
string connectString = "Data Source=" + server_address + ";Initial Catalog= " + database + ";uid= " + username + ";pwd= " + password + "\"";
SqlConnection conn = new SqlConnection(connectString);
conn.Open();
....
conn.Close();
//Northwnd继承自System.Data.Linq.DataContext

Northwnd nw = new Northwnd(@"northwnd.mdf");
//或者,如果您不使用SQL Server Express

Northwnd nw = new Northwnd("Database=Northwind;Server=server_name;Integrated Security=SSPI");

(来自MSDN的示例)。

您能描述症状而不是人为的回答吗?我敢打赌,如果我们能更好地理解问题领域,这可以通过另一种方式更有效地解决。stackoverflow中有一篇文章与此相关: