我正在尝试从我的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());
然后它会打印出这个:
data source=.\SQLEXPRESS;Integrated Security=SSPI;
AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true
当我期望它打印出我在app.config文件中指定的自定义数据库连接字符串时。
更新
感谢大家花时间解决我的问题并提供帮助。虽然你们都是正确的,我可以简单地使用ConfigurationManager.ConnectionStrings或以这种方式访问任何其他子部分,但我相信当我这样做时,配置是只读的。我不能进行任何更改,比如添加一个新的连接字符串或删除一个现有的连接字符串。而我需要这样做。请告诉我是否有一种方法可以在运行时修改配置文件。