读取app.config的connectionStrings元素

Wat*_* v2 5 c# configuration app-config configuration-files

我试图从我的app.config读取连接字符串,但它只显示一个连接字符串,这也不在我的app.config中.

这是我的代码:

System.Diagnostics.Debugger.Break();

Configuration config = 
ConfigurationManager.OpenExeConfiguration(
                    AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);

foreach (var connectionString in config.ConnectionStrings.ConnectionStrings)
    System.Diagnostics.Debug.Print(connectionString.ToString());
Run Code Online (Sandbox Code Playgroud)

它打印出来:

data source=.\SQLEXPRESS;Integrated Security=SSPI;
   AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true
Run Code Online (Sandbox Code Playgroud)

当我希望它将自定义connectionString打印到我在app.config文件中指定的某个数据库时.

更新

大家好,谢谢大家花时间解决我的问题并试图帮忙.虽然你们都是对的,但我可以这样简单地使用ConfigurationManager.ConnectionStrings或访问任何其他子部分,我相信当我这样做时,配置是只读的.我无法对其进行任何更改,例如添加新的连接字符串或删除现有的连接字符串.我需要这样做.如果有办法在运行时修改配置文件,请告诉我.

Fli*_*ter 0

您能读出任何配置设置(除了连接字符串)吗?

尝试:

System.Configuration.ConfigurationManager.AppSettings("MyAppVariable");
Run Code Online (Sandbox Code Playgroud)

另外,该语法看起来有点复杂。尝试这个更简单的版本:

System.Configuration.ConfigurationManager.ConnectionStrings("MyConnectionString").ConnectionString
Run Code Online (Sandbox Code Playgroud)