在我的C#-WinForms-application(.Net 3.5,VS2008)中,我使用以下方式阅读App.Config:
Configuration myConfig =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
App.config在connectionStrings-Section中包含两个连接字符串:
<connectionStrings>
<add name="db1" connectionString="connection1"
providerName="System.Data.SqlClient"/>
<add name="db2" connectionString="connection2"
providerName="System.Data.SqlClient" />
</connectionStrings>
(连接字符串因可读性而被删除)
但是当我遍历ConnectionStringsCollection时,我发现它有三个条目,而不是预期的两个。附加入口指向本地SqlExpress-Server上名为“aspnetdb.mdf”的数据库。我不记得在任何地方添加它,我在项目文件中找不到它作为文字值。通过调试器观察集合,我发现 my 连接字符串将 app.config 作为源。附加字符串有 null 作为源,所以我认为.net从某处汇总了它。
如何摆脱此条目,或者如何告诉配置管理器仅使用app.config中的连接字符串?
答案 0 :(得分:6)
您检查过machine.config
吗?
(在[{1}}中找到64位使用%SystemRoot%\Microsoft.NET\Framework\v2.0.50727\CONFIG
。)
答案 1 :(得分:2)
aspnetdb.mdf来自默认连接字符串集合,通过添加
删除它<clear />
到你元素的顶部。