无法从 app.config 文件读取新添加的连接字符串

Unable to read newly added connection string from app.config file

我在运行时将连接字符串添加到我的 App.config 文件中,如下所示:

ConnectionStringSettings connSettings = new ConnectionStringSettings("dbConnectionString", "Data Source=DBSERVERNAME,1111;Initial Catalog=DBNAME;Integrated Security=false;User ID=USERID;Password=PASSWORD");
            var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
            config.ConnectionStrings.ConnectionStrings.Add(connSettings);
            config.Save();

此代码正确地将连接字符串添加到 app.config 文件。

然后我尝试像这样创建一个 SqlConnectionStringBuilder class:

SqlConnectionStringBuilder destinationConnection = new SqlConnectionStringBuilder(ConfigurationManager.ConnectionStrings["dbConnectionString"].ConnectionString);

我遇到空引用异常。为什么我会收到空​​引用异常?我在这里错过了什么?

配置类缓存读取的文件。在代码中获取新值之前,您需要刷新相应的配置部分。

ConfigurationManager.RefreshSection("connectionStrings");

UPDATE:您实际上是在更新 app.config 并尝试从同一个进程(和 AppDomain)访问连接字符串吗?因为如果是这样,则不需要刷新配置部分。如果您将两个片段都粘贴到控制台应用程序的 Main 方法中,它将按预期工作 而无需 刷新该部分。