Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/296.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
App.config和MS access数据库连接字符串C#_C#_Connection String_App Config - Fatal编程技术网

App.config和MS access数据库连接字符串C#

App.config和MS access数据库连接字符串C#,c#,connection-string,app-config,C#,Connection String,App Config,我需要在app.config中的连接字符串中设置不同的“数据源”,我不知道如何通过C#代码实现这一点 建议和链接将真正帮助我,谢谢 只需使用SqlConnectionStringBuilder类 var connectionString = ConfigurationManager.ConnectionStrings["ChronosDataContext"]; var conn = new SqlConnectionStringBuilder(connectionString)

我需要在app.config中的连接字符串中设置不同的“数据源”,我不知道如何通过C#代码实现这一点


建议和链接将真正帮助我,谢谢

只需使用SqlConnectionStringBuilder类

    var connectionString = ConfigurationManager.ConnectionStrings["ChronosDataContext"];
    var conn = new SqlConnectionStringBuilder(connectionString){
       DataSource = "something"
    };

您可以将此连接字符串用于sql server

<add name="DbName" connectionString="Data Source=192.168.0.2\SQLEXPRESS;Initial Catalog=InexDb29;Integrated Security=False;User Id=XYZ;Password=123456;MultipleActiveResultSets=True;" providerName="System.Data.SqlClient" />

用于Ms访问

<add name="ConnectionString" connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\Test1.accdb"
    providerName="System.Data.OleDb" />


不同的数据源意味着什么?连接字符串表示一个数据源,但配置中可能有许多连接字符串file@Steve我需要设置MS DB的路径,我需要灵活,在应用程序启动时,我想指定数据库的路径并将其放入app.config中的连接字符串中,因为数据库不是集中式的,它可以转移到另一个目录你对这个@Steve有什么看法?有很多方法可以做到。下面的回答中解释了一个问题,尽管这个答案对于需要OleDb的访问无效,因此使用了“我希望连接字符串位于app.config中”,并且要通过C代码修改这个问题,SqlConnectionStringBuilder在这种情况下能帮到我吗?是的。。我已经更新了我的答案,以显示..@Marty Access使用OleDbGood point@Steve。在这种情况下,应使用OleDbConnectionStringBuilder而不是SqlConnectionStringBuilder。但用法几乎相同