编程语言
首页 > 编程语言> > c#-无法从app.config文件读取新添加的连接字符串

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

作者:互联网

我在运行时将连接字符串添加到我的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类:

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

我收到一个空引用异常.为什么会出现空引用异常?我在这里想念什么?

解决方法:

配置类缓存读取的文件.您需要刷新各自的配置部分,然后才能在代码中获取新值.

ConfigurationManager.RefreshSection("connectionStrings");

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

标签:connection-string,app-config,c
来源: https://codeday.me/bug/20191119/2037902.html