【发布时间】:2015-01-31 12:21:51
【问题描述】:
我添加了System.Configuration.dll 作为参考。当我尝试按名称获取连接字符串时,我得到一个空引用异常。所以我尝试使用以下代码查看它是否有:
for (int i = 0; i < ConfigurationManager.ConnectionStrings.Count; i++)
{
string ad = ConfigurationManager.ConnectionStrings[0].ConnectionString;
}
我发现它有 3 个连接字符串!我不确定从哪里来,因为我的配置文件中只有一个,而这三个都不是我添加的。
接下来,我检查了我的 appDomain:
AppDomain.CurrentDomain.SetupInformation.ConfigurationFile;
我已经在我的应用程序中阅读了该文件;它与我的 AppConfig 文件完全相同,并且包含我的连接字符串。
为什么配置管理器找不到它,我该怎么做才能修复它?
【问题讨论】:
-
您是在自己的解决方案下运行一个还是多个项目
-
如果您的解决方案中有多个项目,并且您所指的项目不是启动项目,那么问题很可能是与启动项目关联的 app.config 文件。应编辑此 app.config 以包含所需的连接字符串。
-
解决方案中的多个项目都是win forms应用程序,所有应用程序配置文件都包含连接字符串,不一定相同。我现在已经尝试了只有一个项目的新解决方案,当我复制该应用程序配置并将其替换为解决方案中的一个时,它正在工作。但我很确定它们是一样的......
标签: c# connection-string app-config