我有一个控制台应用程序,其中包含一个应用程序配置文件,该文件包含一个连接字符串,如下所示:
<configuration>
<connectionStrings>
<add name="Target"
connectionString="server=MYSERVER; Database=MYDB; Integrated Security=SSPI;" />
</connectionStrings>
</configuration>
当我使用以下代码将其传递给我的 Connection 时:
ConfigurationManager.ConnectionStrings[1].ToString()
我有两个值,在集合中使用第二个,我的问题是这个第二个值是从哪里来的?
我已经检查了\Bin版本和原始版本,但它不是我的!显然它是系统生成的,但我以前从未见过这个?有人可以启发一下我吗?
神秘的连接字符串是:
data source=.\SQLEXPRESS;
Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;
User Instance=true
这并不是一个问题,我只是想知道为什么会发生这种情况?谢谢!
对于未来可能或可能不会遇到这个问题的人们,请注意,发现 machine.config
后,明显按其索引引用配置是一种不好的做法,因为每个堆栈可能都不同,这就是为什么使用“Keys”的原因。
在这种情况下,我的代码应该是:
ConfigurationManager.ConnectionStrings["Target"].ToString()
大家好!